From 5a5d2bdea0e9388b81f71bfb94ed3b729407a6a4 Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Sun, 10 Jan 2021 20:40:17 -0800 Subject: [PATCH] Fixed ARM-NEON GCC conformance issue with half-precision optimizations on ARM64 --- Inc/DirectXPackedVector.inl | 16 ++++++++-------- LICENSE | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Inc/DirectXPackedVector.inl b/Inc/DirectXPackedVector.inl index 046da58..ea37627 100644 --- a/Inc/DirectXPackedVector.inl +++ b/Inc/DirectXPackedVector.inl @@ -644,13 +644,13 @@ inline HALF* XMConvertFloatToHalfStream uint16x4_t vHalf = vreinterpret_u16_f16(vcvt_f16_f32(vFloat)); - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 0); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 0); pHalf += OutputStride; - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 1); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 1); pHalf += OutputStride; - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 2); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 2); pHalf += OutputStride; - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 3); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 3); pHalf += OutputStride; i += 4; } @@ -701,13 +701,13 @@ inline HALF* XMConvertFloatToHalfStream uint16x4_t vHalf = vreinterpret_u16_f16(vcvt_f16_f32(vFloat)); - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 0); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 0); pHalf += OutputStride; - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 1); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 1); pHalf += OutputStride; - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 2); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 2); pHalf += OutputStride; - vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 3); + vst1_lane_u16(reinterpret_cast(pHalf), vHalf, 3); pHalf += OutputStride; i += 4; } diff --git a/LICENSE b/LICENSE index a1df24b..0e5ac9a 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2011-2020 Microsoft Corp +Copyright (c) 2011-2021 Microsoft Corp Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software