summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/base/bitfield.hh13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/base/bitfield.hh b/src/base/bitfield.hh
index ec1ffce50..59b239a88 100644
--- a/src/base/bitfield.hh
+++ b/src/base/bitfield.hh
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 ARM Limited
+ * Copyright (c) 2017, 2019 ARM Limited
* All rights reserved
*
* The license below extends only to copyright in the software and shall
@@ -293,4 +293,15 @@ inline int ctz32(uint32_t value)
return value ? __builtin_ctz(value) : 32;
}
+/**
+ * Count trailing zeros in a 64-bit value.
+ *
+ * @param An input value
+ * @return The number of trailing zeros or 64 if the value is zero.
+ */
+inline int ctz64(uint64_t value)
+{
+ return value ? __builtin_ctzll(value) : 64;
+}
+
#endif // __BASE_BITFIELD_HH__