aboutsummaryrefslogtreecommitdiff
path: root/src/core/Rounding.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/Rounding.cpp')
-rw-r--r--src/core/Rounding.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/core/Rounding.cpp b/src/core/Rounding.cpp
index fea635be97..da6e5f6099 100644
--- a/src/core/Rounding.cpp
+++ b/src/core/Rounding.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -50,7 +50,13 @@ int arm_compute::round(float x, RoundingPolicy rounding_policy)
}
case RoundingPolicy::TO_NEAREST_EVEN:
{
+#ifdef __aarch64__
+ asm("fcvtns %x[res], %s[value]"
+ : [res] "=r"(rounded)
+ : [value] "w"(x));
+#else // __aarch64__
ARM_COMPUTE_ERROR("TO_NEAREST_EVEN rounding policy is not supported.");
+#endif // __aarch64__
break;
}
default: