diff options
author | Rizwan Qureshi <rizwan.qureshi@intel.com> | 2016-09-07 20:11:11 +0530 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2016-09-12 19:51:36 +0200 |
commit | 8453c4f2fba7ae95ed14137a14575226b24218af (patch) | |
tree | 6b1a684c422910bef540077c03b972b4f843810b /src/cpu/x86/mtrr/mtrr.c | |
parent | b1b44d34e39e52edfe5521d0671d685962529885 (diff) |
cpu/x86: Move fls() and fms() to mtrr.h
Move the funtion to find most significant bit set(fms)
and function to find least significant bit set(fls) to a common
place. And remove the duplicates.
Change-Id: Ia821038b622d93e7f719c18e5ee3e8112de66a53
Signed-off-by: Rizwan Qureshi <rizwan.qureshi@intel.com>
Reviewed-on: https://review.coreboot.org/16525
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Diffstat (limited to 'src/cpu/x86/mtrr/mtrr.c')
-rw-r--r-- | src/cpu/x86/mtrr/mtrr.c | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/src/cpu/x86/mtrr/mtrr.c b/src/cpu/x86/mtrr/mtrr.c index 8bdc511fd5..8033e792bc 100644 --- a/src/cpu/x86/mtrr/mtrr.c +++ b/src/cpu/x86/mtrr/mtrr.c @@ -92,30 +92,6 @@ static void enable_var_mtrr(unsigned char deftype) wrmsr(MTRR_DEF_TYPE_MSR, msr); } -/* fms: find most significant bit set, stolen from Linux Kernel Source. */ -static inline unsigned int fms(unsigned int x) -{ - int r; - - __asm__("bsrl %1,%0\n\t" - "jnz 1f\n\t" - "movl $0,%0\n" - "1:" : "=r" (r) : "g" (x)); - return r; -} - -/* fls: find least significant bit set */ -static inline unsigned int fls(unsigned int x) -{ - int r; - - __asm__("bsfl %1,%0\n\t" - "jnz 1f\n\t" - "movl $32,%0\n" - "1:" : "=r" (r) : "g" (x)); - return r; -} - #define MTRR_VERBOSE_LEVEL BIOS_NEVER /* MTRRs are at a 4KiB granularity. Therefore all address calculations can |