summaryrefslogtreecommitdiff
path: root/common/clz.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/clz.c')
-rw-r--r--common/clz.c44
1 files changed, 0 insertions, 44 deletions
diff --git a/common/clz.c b/common/clz.c
deleted file mode 100644
index b0b58e76a0..0000000000
--- a/common/clz.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2014 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Software emulation for CLZ instruction
- */
-
-#include "common.h"
-
-/**
- * Count leading zeros
- *
- * @param x non null integer.
- * @return the number of leading 0-bits in x,
- * starting at the most significant bit position.
- */
-int __keep __clzsi2(int x)
-{
- int r = 0;
-
- if (!x)
- return 32;
- if (!(x & 0xffff0000u)) {
- x <<= 16;
- r += 16;
- }
- if (!(x & 0xff000000u)) {
- x <<= 8;
- r += 8;
- }
- if (!(x & 0xf0000000u)) {
- x <<= 4;
- r += 4;
- }
- if (!(x & 0xc0000000u)) {
- x <<= 2;
- r += 2;
- }
- if (!(x & 0x80000000u)) {
- x <<= 1;
- r += 1;
- }
- return r;
-}