mirror of
https://github.com/aicodix/code.git
synced 2026-04-27 14:30:36 +00:00
added support for aarch64
__ARM_NEON__ is not defined on gcc anymore ..
This commit is contained in:
parent
f2ebaf4504
commit
986059694e
4 changed files with 8 additions and 5 deletions
|
|
@ -129,7 +129,7 @@ struct PolarHelper<SIMD<int8_t, WIDTH>>
|
|||
}
|
||||
static TYPE qmul(TYPE a, TYPE b)
|
||||
{
|
||||
#ifdef __ARM_NEON__
|
||||
#ifdef __ARM_NEON
|
||||
return vmul(a, b);
|
||||
#else
|
||||
return vsign(a, b);
|
||||
|
|
@ -137,7 +137,7 @@ struct PolarHelper<SIMD<int8_t, WIDTH>>
|
|||
}
|
||||
static TYPE prod(TYPE a, TYPE b)
|
||||
{
|
||||
#ifdef __ARM_NEON__
|
||||
#ifdef __ARM_NEON
|
||||
return vmul(vmul(vsignum(a), vsignum(b)), vmin(vqabs(a), vqabs(b)));
|
||||
#else
|
||||
return vsign(vmin(vqabs(a), vqabs(b)), vsign(vsignum(a), b));
|
||||
|
|
@ -145,7 +145,7 @@ struct PolarHelper<SIMD<int8_t, WIDTH>>
|
|||
}
|
||||
static TYPE madd(TYPE a, TYPE b, TYPE c)
|
||||
{
|
||||
#ifdef __ARM_NEON__
|
||||
#ifdef __ARM_NEON
|
||||
return vqadd(vmul(a, vmax(b, vdup<TYPE>(-127))), c);
|
||||
#else
|
||||
return vqadd(vsign(vmax(b, vdup<TYPE>(-127)), a), c);
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public:
|
|||
}
|
||||
};
|
||||
|
||||
#ifdef __ARM_NEON__
|
||||
#ifdef __ARM_NEON
|
||||
template <int WIDTH>
|
||||
class Rotate<SIMD<int8_t, 16>, WIDTH>
|
||||
{
|
||||
|
|
|
|||
2
simd.hh
2
simd.hh
|
|
@ -1504,7 +1504,7 @@ static inline SIMD<double, WIDTH> vshuf(SIMD<double, WIDTH> a, SIMD<uint64_t, WI
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef __ARM_NEON__
|
||||
#ifdef __ARM_NEON
|
||||
#include "neon.hh"
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -8,6 +8,9 @@ CXX = clang++ -stdlib=libc++ -march=native
|
|||
#CXX = armv7a-hardfloat-linux-gnueabi-g++ -static -mfpu=neon -march=armv7-a
|
||||
#QEMU = qemu-arm
|
||||
|
||||
#CXX = aarch64-unknown-linux-gnu-g++ -static
|
||||
#QEMU = qemu-aarch64
|
||||
|
||||
.PHONY: clean test
|
||||
|
||||
tests := $(basename $(wildcard *_test.*))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue