Skip to content

Commit 27811d5

Browse files
committed
gcc+neon
1 parent b00ac79 commit 27811d5

3 files changed

Lines changed: 9 additions & 9 deletions

File tree

jsrc/avxintrin-neon.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2564,8 +2564,8 @@ FORCE_INLINE __m256 _mm256_castpd_ps(__m256d a)
25642564
{
25652565
__m256 b;
25662566

2567-
b.vect_f32[0] = vreinterpretq_f64_f32(a.vect_f64[0]);
2568-
b.vect_f32[1] = vreinterpretq_f64_f32(a.vect_f64[1]);
2567+
b.vect_f32[0] = vreinterpretq_f32_f64(a.vect_f64[0]);
2568+
b.vect_f32[1] = vreinterpretq_f32_f64(a.vect_f64[1]);
25692569

25702570
return b;
25712571
}
@@ -2574,8 +2574,8 @@ FORCE_INLINE __m256i _mm256_castpd_si256(__m256d a)
25742574
{
25752575
__m256i b;
25762576

2577-
b.vect_s64[0] = vreinterpretq_f64_s64(a.vect_f64[0]);
2578-
b.vect_s64[1] = vreinterpretq_f64_s64(a.vect_f64[1]);
2577+
b.vect_s64[0] = vreinterpretq_s64_f64(a.vect_f64[0]);
2578+
b.vect_s64[1] = vreinterpretq_s64_f64(a.vect_f64[1]);
25792579

25802580
return b;
25812581
}
@@ -2584,8 +2584,8 @@ FORCE_INLINE __m256d _mm256_castps_pd(__m256 a)
25842584
{
25852585
__m256d b;
25862586

2587-
b.vect_f64[0] = vreinterpretq_f32_f64(a.vect_f32[0]);
2588-
b.vect_f64[1] = vreinterpretq_f32_f64(a.vect_f32[1]);
2587+
b.vect_f64[0] = vreinterpretq_f64_f32(a.vect_f32[0]);
2588+
b.vect_f64[1] = vreinterpretq_f64_f32(a.vect_f32[1]);
25892589

25902590
return b;
25912591
}

jsrc/j.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1098,8 +1098,8 @@ if(likely(!((I)jtinplace&JTWILLBEOPENED)))z=EPILOGNORET(z); RETF(z); \
10981098
// AVX512 u=_mm256_cvtepi64_pd(_mm256_castpd_si256(u));
10991099
#if 1
11001100
#if defined(__aarch64__)
1101-
#define CVTEPI64(z,u) z.vect_f64[0] = vcvtq_f64_s64(vreinterpretq_f64_s64(u.vect_f64[0])); \
1102-
z.vect_f64[1] = vcvtq_f64_s64(vreinterpretq_f64_s64(u.vect_f64[1]));
1101+
#define CVTEPI64(z,u) z.vect_f64[0] = vcvtq_f64_s64(vreinterpretq_s64_f64(u.vect_f64[0])); \
1102+
z.vect_f64[1] = vcvtq_f64_s64(vreinterpretq_s64_f64(u.vect_f64[1]));
11031103
#else
11041104

11051105
#define CVTEPI64(z,u) { __m256i u_lo = _mm256_castps_si256(_mm256_blend_ps(_mm256_castsi256_ps(magic_i_lo),_mm256_castpd_ps(u),0b01010101)); /* Blend the 32 lowest significant bits of u with magic_int_lo */ \

make2/build_libj.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ fi
9292

9393
if [ -z "${compiler##*gcc*}" ] || [ -z "${CC##*gcc*}" ]; then
9494
# gcc
95-
common="$OPENMP -fPIC -O2 -falign-functions=4 -fvisibility=hidden -fno-strict-aliasing -fwrapv -fno-stack-protector \
95+
common="$OPENMP -fPIC -O2 -falign-functions=4 -fvisibility=hidden -fno-strict-aliasing -fwrapv -fno-stack-protector -flax-vector-conversions \
9696
-Werror -Wextra -Wno-unknown-warning-option \
9797
-Wno-cast-function-type \
9898
-Wno-clobbered \

0 commit comments

Comments
 (0)