numkong 7.2.2__tar.gz → 7.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {numkong-7.2.2/numkong.egg-info → numkong-7.2.4}/PKG-INFO +1 -1
- numkong-7.2.4/VERSION +1 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/capabilities.h +1 -1
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/serial.h +6 -6
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/serial.h +3 -3
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/haswell.h +2 -2
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/neon.h +2 -2
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/rvv.h +2 -2
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/serial.h +2 -2
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/serial.h +2 -2
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/types.h +6 -0
- {numkong-7.2.2 → numkong-7.2.4/numkong.egg-info}/PKG-INFO +1 -1
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_neon.c +0 -3
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_neon_bfdot.c +0 -3
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_neon_fhm.c +0 -3
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_neon_half.c +0 -3
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_neon_sdot.c +0 -3
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_neonfp8.c +0 -3
- numkong-7.2.2/VERSION +0 -1
- {numkong-7.2.2 → numkong-7.2.4}/LICENSE +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/MANIFEST.in +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/README.md +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_bf16.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_bf16c.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_e2m3.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_e3m2.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_e4m3.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_e5m2.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_f16.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_f16c.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_f32.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_f32c.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_f64.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_f64c.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_i16.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_i32.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_i4.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_i64.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_i8.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_other.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_u1.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_u16.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_u32.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_u4.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_u64.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/dispatch_u8.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/c/numkong.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/attention/sapphireamx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/attention/sme.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/attention.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/diamond.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/sapphire.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/cast.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved/smef64.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/curved.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/alder.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/diamond.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/neonfhm.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/neonfp8.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/neonsdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/rvvbb.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/rvvbf16.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/rvvhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/sapphire.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/sierra.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/sve.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/svebfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/svehalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/alder.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/diamond.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/neonfhm.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/neonfp8.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/neonsdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/sapphireamx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/sierra.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/sme.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/smebi32.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/smef64.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/smehalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/dots.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/sapphire.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/each.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/geospatial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/alder.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/neonsdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/sapphireamx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/sme.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/maxsim.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/mesh.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/numkong.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/probability/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/probability/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/probability/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/probability/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/probability/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/probability.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/random.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/alder.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/neonfhm.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/neonsdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/sierra.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/reduce.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/sapphire.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/scalar.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/rvvbb.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/sve.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/set.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/smebi32.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sets.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sparse/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sparse/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sparse/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sparse/sve2.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sparse/turin.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/sparse.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/alder.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/diamond.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/neonfp8.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/neonsdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/rvvbf16.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/rvvhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/sierra.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/sve.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/svebfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/svehalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/alder.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/diamond.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/genoa.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/icelake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/loongsonasx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/neonbfdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/neonfhm.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/neonfp8.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/neonhalf.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/neonsdot.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/powervsx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/sapphireamx.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/sierra.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/sme.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/smef64.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/spatials.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry/haswell.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry/neon.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry/rvv.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry/serial.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry/skylake.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry/v128relaxed.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/include/numkong/trigonometry.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/numkong.egg-info/SOURCES.txt +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/numkong.egg-info/dependency_links.txt +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/numkong.egg-info/not-zip-safe +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/numkong.egg-info/top_level.txt +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme2.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme2p1.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme_bf16.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme_bi32.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme_f64.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme_fa64.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme_half.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sme_lut2.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sve.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sve2.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sve2p1.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sve_bfdot.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sve_half.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/arm_sve_sdot.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/loongarch_lasx.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/power_vsx.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/riscv_rvv.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/riscv_rvv_bb.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/riscv_rvv_bf16.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/riscv_rvv_half.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/wasm_v128relaxed.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_alder.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_diamond.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_genoa.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_graniteamx.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_haswell.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_icelake.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_sapphire.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_sapphireamx.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_sierra.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_skylake.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/probes/x86_turin.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/pyproject.toml +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/README.md +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/__init__.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/annotations/__init__.pyi +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/annotations/py.typed +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/distance.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/distance.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/each.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/each.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/matrix.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/matrix.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/maxsim.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/maxsim.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/mesh.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/mesh.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/numkong.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/numkong.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/numpy_interop.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/numpy_interop.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/tensor.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/tensor.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/types.c +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/python/types.h +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/setup.cfg +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/setup.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_base.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_cross.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_curved.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_dot.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_each.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_geospatial.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_maxsim.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_mesh.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_probability.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_reduce.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_set.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_similarities.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_sparse.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_spatial.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_tensor.py +0 -0
- {numkong-7.2.2 → numkong-7.2.4}/test/test_trigonometry.py +0 -0
numkong-7.2.4/VERSION
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
7.2.4
|
|
@@ -107,8 +107,8 @@ nk_define_each_scale_(i16, f32, nk_assign_from_to_, nk_f32_to_i16_serial) /
|
|
|
107
107
|
nk_define_each_scale_(u16, f32, nk_assign_from_to_, nk_f32_to_u16_serial) // nk_each_scale_u16_serial
|
|
108
108
|
nk_define_each_scale_(i32, f64, nk_assign_from_to_, nk_f64_to_i32_serial) // nk_each_scale_i32_serial
|
|
109
109
|
nk_define_each_scale_(u32, f64, nk_assign_from_to_, nk_f64_to_u32_serial) // nk_each_scale_u32_serial
|
|
110
|
-
nk_define_each_scale_(i64, f64,
|
|
111
|
-
nk_define_each_scale_(u64, f64,
|
|
110
|
+
nk_define_each_scale_(i64, f64, nk_f64_from_i64_, nk_f64_to_i64_serial) // nk_each_scale_i64_serial
|
|
111
|
+
nk_define_each_scale_(u64, f64, nk_f64_from_u64_, nk_f64_to_u64_serial) // nk_each_scale_u64_serial
|
|
112
112
|
|
|
113
113
|
nk_define_each_blend_(f64, f64, nk_assign_from_to_, nk_assign_from_to_) // nk_each_blend_f64_serial
|
|
114
114
|
nk_define_each_blend_(f32, f32, nk_assign_from_to_, nk_assign_from_to_) // nk_each_blend_f32_serial
|
|
@@ -124,8 +124,8 @@ nk_define_each_blend_(i16, f32, nk_assign_from_to_, nk_f32_to_i16_serial) /
|
|
|
124
124
|
nk_define_each_blend_(u16, f32, nk_assign_from_to_, nk_f32_to_u16_serial) // nk_each_blend_u16_serial
|
|
125
125
|
nk_define_each_blend_(i32, f64, nk_assign_from_to_, nk_f64_to_i32_serial) // nk_each_blend_i32_serial
|
|
126
126
|
nk_define_each_blend_(u32, f64, nk_assign_from_to_, nk_f64_to_u32_serial) // nk_each_blend_u32_serial
|
|
127
|
-
nk_define_each_blend_(i64, f64,
|
|
128
|
-
nk_define_each_blend_(u64, f64,
|
|
127
|
+
nk_define_each_blend_(i64, f64, nk_f64_from_i64_, nk_f64_to_i64_serial) // nk_each_blend_i64_serial
|
|
128
|
+
nk_define_each_blend_(u64, f64, nk_f64_from_u64_, nk_f64_to_u64_serial) // nk_each_blend_u64_serial
|
|
129
129
|
|
|
130
130
|
nk_define_each_fma_(f64, f64, nk_assign_from_to_, nk_assign_from_to_) // nk_each_fma_f64_serial
|
|
131
131
|
nk_define_each_fma_(f32, f32, nk_assign_from_to_, nk_assign_from_to_) // nk_each_fma_f32_serial
|
|
@@ -141,8 +141,8 @@ nk_define_each_fma_(i16, f32, nk_assign_from_to_, nk_f32_to_i16_serial) //
|
|
|
141
141
|
nk_define_each_fma_(u16, f32, nk_assign_from_to_, nk_f32_to_u16_serial) // nk_each_fma_u16_serial
|
|
142
142
|
nk_define_each_fma_(i32, f64, nk_assign_from_to_, nk_f64_to_i32_serial) // nk_each_fma_i32_serial
|
|
143
143
|
nk_define_each_fma_(u32, f64, nk_assign_from_to_, nk_f64_to_u32_serial) // nk_each_fma_u32_serial
|
|
144
|
-
nk_define_each_fma_(i64, f64,
|
|
145
|
-
nk_define_each_fma_(u64, f64,
|
|
144
|
+
nk_define_each_fma_(i64, f64, nk_f64_from_i64_, nk_f64_to_i64_serial) // nk_each_fma_i64_serial
|
|
145
|
+
nk_define_each_fma_(u64, f64, nk_f64_from_u64_, nk_f64_to_u64_serial) // nk_each_fma_u64_serial
|
|
146
146
|
|
|
147
147
|
#undef nk_define_each_scale_
|
|
148
148
|
#undef nk_define_each_sum_
|
|
@@ -436,7 +436,7 @@ nk_define_det3x3_(f64)
|
|
|
436
436
|
rotation[3] = 0, rotation[4] = 1, rotation[5] = 0; \
|
|
437
437
|
rotation[6] = 0, rotation[7] = 0, rotation[8] = 1; \
|
|
438
438
|
} \
|
|
439
|
-
if (scale) *scale = 1
|
|
439
|
+
if (scale) *scale = (nk_##output_type##_t)1; \
|
|
440
440
|
nk_##accumulator_type##_t sum_squared = 0, sum_squared_compensation = 0; \
|
|
441
441
|
for (nk_size_t i = 0; i < n; ++i) { \
|
|
442
442
|
load_and_convert(a + i * 3 + 0, &val_a_x), load_and_convert(b + i * 3 + 0, &val_b_x); \
|
|
@@ -534,7 +534,7 @@ nk_define_det3x3_(f64)
|
|
|
534
534
|
if (rotation) { \
|
|
535
535
|
for (int j = 0; j < 9; ++j) rotation[j] = (nk_##output_type##_t)rotation_matrix[j]; \
|
|
536
536
|
} \
|
|
537
|
-
if (scale) *scale = 1
|
|
537
|
+
if (scale) *scale = (nk_##output_type##_t)1; \
|
|
538
538
|
/* Step 5: Compute RMSD after rotation */ \
|
|
539
539
|
nk_##accumulator_type##_t sum_squared = 0, sum_squared_compensation = 0; \
|
|
540
540
|
for (nk_size_t i = 0; i < n; ++i) { \
|
|
@@ -652,7 +652,7 @@ nk_define_det3x3_(f64)
|
|
|
652
652
|
nk_##svd_type##_t trace_scaled_s = svd_s[0] + svd_s[4] + sign_det * svd_s[8]; \
|
|
653
653
|
nk_##accumulator_type##_t scale_factor = (nk_##accumulator_type##_t)trace_scaled_s / \
|
|
654
654
|
((nk_##accumulator_type##_t)n * variance_a); \
|
|
655
|
-
if (scale) *scale = scale_factor;
|
|
655
|
+
if (scale) *scale = (nk_##output_type##_t)scale_factor; \
|
|
656
656
|
if (rotation_det < 0) { \
|
|
657
657
|
svd_v[2] = -svd_v[2], svd_v[5] = -svd_v[5], svd_v[8] = -svd_v[8]; \
|
|
658
658
|
nk_rotation_from_svd_##svd_type##_serial_(svd_u, svd_v, rotation_matrix); \
|
|
@@ -89,8 +89,8 @@ NK_PUBLIC nk_u64_t nk_u64_saturating_mul_haswell(nk_u64_t a, nk_u64_t b) {
|
|
|
89
89
|
}
|
|
90
90
|
NK_PUBLIC nk_i64_t nk_i64_saturating_mul_haswell(nk_i64_t a, nk_i64_t b) {
|
|
91
91
|
int sign = (a < 0) ^ (b < 0);
|
|
92
|
-
nk_u64_t abs_a = a < 0 ? -(nk_u64_t)a : (nk_u64_t)a;
|
|
93
|
-
nk_u64_t abs_b = b < 0 ? -(nk_u64_t)b : (nk_u64_t)b;
|
|
92
|
+
nk_u64_t abs_a = a < 0 ? (0u - (nk_u64_t)a) : (nk_u64_t)a;
|
|
93
|
+
nk_u64_t abs_b = b < 0 ? (0u - (nk_u64_t)b) : (nk_u64_t)b;
|
|
94
94
|
unsigned long long high;
|
|
95
95
|
unsigned long long low = _mulx_u64(abs_a, abs_b, &high);
|
|
96
96
|
if (high || (sign && low > 9223372036854775808ull) || (!sign && low > 9223372036854775807ull))
|
|
@@ -98,8 +98,8 @@ NK_PUBLIC nk_u64_t nk_u64_saturating_mul_neon(nk_u64_t a, nk_u64_t b) {
|
|
|
98
98
|
}
|
|
99
99
|
NK_PUBLIC nk_i64_t nk_i64_saturating_mul_neon(nk_i64_t a, nk_i64_t b) {
|
|
100
100
|
int sign = (a < 0) ^ (b < 0);
|
|
101
|
-
nk_u64_t abs_a = a < 0 ? -(nk_u64_t)a : (nk_u64_t)a;
|
|
102
|
-
nk_u64_t abs_b = b < 0 ? -(nk_u64_t)b : (nk_u64_t)b;
|
|
101
|
+
nk_u64_t abs_a = a < 0 ? (0u - (nk_u64_t)a) : (nk_u64_t)a;
|
|
102
|
+
nk_u64_t abs_b = b < 0 ? (0u - (nk_u64_t)b) : (nk_u64_t)b;
|
|
103
103
|
nk_u64_t high = nk_u64_mulhigh_neon_(abs_a, abs_b);
|
|
104
104
|
nk_u64_t low = abs_a * abs_b;
|
|
105
105
|
if (high || (sign && low > 9223372036854775808ull) || (!sign && low > 9223372036854775807ull))
|
|
@@ -185,8 +185,8 @@ NK_PUBLIC nk_u64_t nk_u64_saturating_mul_rvv(nk_u64_t a, nk_u64_t b) {
|
|
|
185
185
|
}
|
|
186
186
|
NK_PUBLIC nk_i64_t nk_i64_saturating_mul_rvv(nk_i64_t a, nk_i64_t b) {
|
|
187
187
|
int sign = (a < 0) ^ (b < 0);
|
|
188
|
-
nk_u64_t abs_a = a < 0 ? -(nk_u64_t)a : (nk_u64_t)a;
|
|
189
|
-
nk_u64_t abs_b = b < 0 ? -(nk_u64_t)b : (nk_u64_t)b;
|
|
188
|
+
nk_u64_t abs_a = a < 0 ? (0u - (nk_u64_t)a) : (nk_u64_t)a;
|
|
189
|
+
nk_u64_t abs_b = b < 0 ? (0u - (nk_u64_t)b) : (nk_u64_t)b;
|
|
190
190
|
vuint64m1_t a_u64m1 = __riscv_vmv_v_x_u64m1(abs_a, 1);
|
|
191
191
|
vuint64m1_t b_u64m1 = __riscv_vmv_v_x_u64m1(abs_b, 1);
|
|
192
192
|
nk_u64_t high = __riscv_vmv_x_s_u64m1_u64(__riscv_vmulhu_vv_u64m1(a_u64m1, b_u64m1, 1));
|
|
@@ -238,8 +238,8 @@ NK_PUBLIC nk_i64_t nk_i64_saturating_mul_serial(nk_i64_t a, nk_i64_t b) {
|
|
|
238
238
|
int sign = ((a < 0) ^ (b < 0)) ? -1 : 1; // Track the sign of the result
|
|
239
239
|
|
|
240
240
|
// Take absolute values for easy multiplication and overflow detection
|
|
241
|
-
nk_u64_t abs_a = (a < 0) ? -(nk_u64_t)a : (nk_u64_t)a;
|
|
242
|
-
nk_u64_t abs_b = (b < 0) ? -(nk_u64_t)b : (nk_u64_t)b;
|
|
241
|
+
nk_u64_t abs_a = (a < 0) ? (0u - (nk_u64_t)a) : (nk_u64_t)a;
|
|
242
|
+
nk_u64_t abs_b = (b < 0) ? (0u - (nk_u64_t)b) : (nk_u64_t)b;
|
|
243
243
|
|
|
244
244
|
// Split the absolute values into high and low 32-bit parts
|
|
245
245
|
nk_u64_t a_high = abs_a >> 32;
|
|
@@ -101,8 +101,8 @@ extern "C" {
|
|
|
101
101
|
if (a_norm_sq == 0 && b_norm_sq == 0) { *result = 0; } \
|
|
102
102
|
else if (dot_product == 0) { *result = 1; } \
|
|
103
103
|
else { \
|
|
104
|
-
nk_##output_type##_t unclipped_distance =
|
|
105
|
-
|
|
104
|
+
nk_##output_type##_t unclipped_distance = (nk_##output_type##_t)( \
|
|
105
|
+
1 - dot_product * compute_rsqrt(a_norm_sq) * compute_rsqrt(b_norm_sq)); \
|
|
106
106
|
*result = unclipped_distance > 0 ? unclipped_distance : 0; \
|
|
107
107
|
} \
|
|
108
108
|
}
|
|
@@ -1541,6 +1541,12 @@ NK_INTERNAL nk_bf16_t nk_bf16_from_u16_(nk_u16_t bits) {
|
|
|
1541
1541
|
return c.bf;
|
|
1542
1542
|
}
|
|
1543
1543
|
|
|
1544
|
+
NK_INTERNAL void nk_f64_from_i64_(nk_i64_t const *src, nk_f64_t *dest) { *dest = (nk_f64_t)*src; }
|
|
1545
|
+
NK_INTERNAL void nk_f64_from_u64_(nk_u64_t const *src, nk_f64_t *dest) { *dest = (nk_f64_t)*src; }
|
|
1546
|
+
NK_INTERNAL void nk_f32_from_i32_(nk_i32_t const *src, nk_f32_t *dest) { *dest = (nk_f32_t)*src; }
|
|
1547
|
+
NK_INTERNAL void nk_f32_from_u32_(nk_u32_t const *src, nk_f32_t *dest) { *dest = (nk_f32_t)*src; }
|
|
1548
|
+
NK_INTERNAL void nk_f32_from_f64_(nk_f64_t const *src, nk_f32_t *dest) { *dest = (nk_f32_t)*src; }
|
|
1549
|
+
|
|
1544
1550
|
/** @brief E4M3: NaN when (raw & 0x7F) == 0x7F (two NaN values: 0x7F, 0xFF). */
|
|
1545
1551
|
NK_INTERNAL int nk_e4m3_is_nan_(nk_e4m3_t x) { return (x & 0x7F) == 0x7F; }
|
|
1546
1552
|
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
/* NumKong ISA probe: NEON BF16 (ARMv8.6-A bfloat16 dot product) */
|
|
2
|
-
#if !defined(__ARM_FEATURE_BF16_VECTOR_ARITHMETIC) && !(defined(__ARM_ARCH) && __ARM_ARCH >= 806)
|
|
3
|
-
#error "NEON BF16 not available"
|
|
4
|
-
#endif
|
|
5
2
|
#include <arm_neon.h>
|
|
6
3
|
int main(void) {
|
|
7
4
|
bfloat16x8_t a = vdupq_n_bf16(1.0f);
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
/* NumKong ISA probe: NEON FHM (ARMv8.2-A FP16 fused multiply-add) */
|
|
2
|
-
#if !defined(__ARM_FEATURE_FP16_FML) && !(defined(__ARM_ARCH) && __ARM_ARCH >= 804)
|
|
3
|
-
#error "NEON FHM not available"
|
|
4
|
-
#endif
|
|
5
2
|
#include <arm_neon.h>
|
|
6
3
|
int main(void) {
|
|
7
4
|
float16x8_t a = vdupq_n_f16(1.0f);
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
/* NumKong ISA probe: NEON F16 (ARMv8.2-A half-precision) */
|
|
2
|
-
#if !defined(__ARM_FEATURE_FP16_VECTOR_ARITHMETIC) && !(defined(__ARM_ARCH) && __ARM_ARCH >= 802)
|
|
3
|
-
#error "NEON F16 not available"
|
|
4
|
-
#endif
|
|
5
2
|
#include <arm_neon.h>
|
|
6
3
|
int main(void) {
|
|
7
4
|
float16x8_t a = vdupq_n_f16(1.0f);
|
numkong-7.2.2/VERSION
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
7.2.2
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|