aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaibo Huang <hhb@google.com>2020-12-09 15:51:27 -0800
committerHaibo Huang <hhb@google.com>2020-12-09 15:51:27 -0800
commit13d63439bf15e2b55593a4173c341ae389d9a6f4 (patch)
tree3d92e5b435611f66779c77cdf8e1dd3b50769081
parent7a8156ad2be52905760f5c5e0eb6bf4ccf3e248d (diff)
parent63058eff77e11aa15bf531df5dd34395ec3017c8 (diff)
downloadFXdiv-13d63439bf15e2b55593a4173c341ae389d9a6f4.tar.gz
Upgrade FXdiv to 63058eff77e11aa15bf531df5dd34395ec3017c8
Test: make Change-Id: I7f406d761f4deadb0ea3715252fc509abddbfa3f
-rw-r--r--BUILD.bazel2
-rw-r--r--METADATA6
-rw-r--r--include/fxdiv.h4
3 files changed, 7 insertions, 5 deletions
diff --git a/BUILD.bazel b/BUILD.bazel
index 7b0ba72..2e3882b 100644
--- a/BUILD.bazel
+++ b/BUILD.bazel
@@ -2,6 +2,8 @@ load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_test")
licenses(["notice"])
+exports_files(["LICENSE"])
+
################################# FXdiv library ################################
cc_library(
diff --git a/METADATA b/METADATA
index f0b139b..7e1712f 100644
--- a/METADATA
+++ b/METADATA
@@ -9,11 +9,11 @@ third_party {
type: GIT
value: "https://github.com/Maratyszcza/FXdiv"
}
- version: "561254d968e5679460e6a0a743206410284d9f46"
+ version: "63058eff77e11aa15bf531df5dd34395ec3017c8"
license_type: NOTICE
last_upgrade_date {
year: 2020
- month: 4
- day: 13
+ month: 12
+ day: 9
}
}
diff --git a/include/fxdiv.h b/include/fxdiv.h
index f5a09d0..2c35038 100644
--- a/include/fxdiv.h
+++ b/include/fxdiv.h
@@ -173,7 +173,7 @@ static inline struct fxdiv_divisor_uint32_t fxdiv_init_uint32_t(uint32_t d) {
: "=a" (q), "+d" (u_hi)
: [d] "r" (d), "a" (0)
: "cc");
- #elif (defined(_MSC_VER) && _MSC_VER >= 1920) && (defined(_M_IX86) || defined(_M_X64))
+ #elif (defined(_MSC_VER) && _MSC_VER >= 1920) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (defined(_M_IX86) || defined(_M_X64))
unsigned int remainder;
const uint32_t q = (uint32_t) _udiv64((unsigned __int64) ((uint64_t) u_hi << 32), (unsigned int) d, &remainder);
#else
@@ -274,7 +274,7 @@ static inline struct fxdiv_divisor_uint64_t fxdiv_init_uint64_t(uint64_t d) {
#elif 0 && defined(__GNUC__) && defined(__SIZEOF_INT128__)
/* GCC, Clang, and Intel Compiler fail to inline optimized implementation and call into support library for 128-bit division */
const uint64_t q = (uint64_t) (((unsigned __int128) u_hi << 64) / ((unsigned __int128) d));
- #elif (defined(_MSC_VER) && _MSC_VER >= 1920) && defined(_M_X64)
+ #elif (defined(_MSC_VER) && _MSC_VER >= 1920) && !defined(__clang__) && !defined(__INTEL_COMPILER) && defined(_M_X64)
unsigned __int64 remainder;
const uint64_t q = (uint64_t) _udiv128((unsigned __int64) u_hi, 0, (unsigned __int64) d, &remainder);
#else