replace negative CMOV_UNSUPPORTED with CMOV
Change-Id: Id2aba9402495d99176eb499b1c74f86349e1164b Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
parent
09821973ca
commit
274cc72aee
10 changed files with 20 additions and 18 deletions
|
@ -99,6 +99,7 @@ default CPU_MINUTEIA
|
||||||
|
|
||||||
config CPU_ATOM
|
config CPU_ATOM
|
||||||
bool "Atom"
|
bool "Atom"
|
||||||
|
select CMOV
|
||||||
help
|
help
|
||||||
This option signifies the use of a CPU from the Atom family.
|
This option signifies the use of a CPU from the Atom family.
|
||||||
|
|
||||||
|
@ -175,12 +176,11 @@ config TICKLESS_IDLE_UNSUPPORTED
|
||||||
This option signifies the use of an Intel CPU that lacks
|
This option signifies the use of an Intel CPU that lacks
|
||||||
support for tickless idle.
|
support for tickless idle.
|
||||||
|
|
||||||
config CMOV_UNSUPPORTED
|
config CMOV
|
||||||
def_bool y
|
def_bool n
|
||||||
depends on CPU_MINUTEIA
|
|
||||||
help
|
help
|
||||||
This option signifies the use of an Intel CPU that lacks support
|
This option signifies the use of an Intel CPU that supports
|
||||||
for the CMOV instruction.
|
the CMOV instruction.
|
||||||
|
|
||||||
config CPU_FLOAT_UNSUPPORTED
|
config CPU_FLOAT_UNSUPPORTED
|
||||||
def_bool y
|
def_bool y
|
||||||
|
|
|
@ -117,6 +117,7 @@ CONFIG_CPU_ATOM=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
|
CONFIG_CMOV=y
|
||||||
# CONFIG_CPU_SSE_UNSUPPORTED is not set
|
# CONFIG_CPU_SSE_UNSUPPORTED is not set
|
||||||
CONFIG_CACHE_LINE_SIZE=64
|
CONFIG_CACHE_LINE_SIZE=64
|
||||||
|
|
||||||
|
|
|
@ -117,7 +117,7 @@ CONFIG_CPU_MINUTEIA=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
CONFIG_CMOV_UNSUPPORTED=y
|
# CONFIG_CMOV is not set
|
||||||
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
||||||
CONFIG_CPU_SSE_UNSUPPORTED=y
|
CONFIG_CPU_SSE_UNSUPPORTED=y
|
||||||
CONFIG_CACHE_LINE_SIZE=0
|
CONFIG_CACHE_LINE_SIZE=0
|
||||||
|
|
|
@ -117,7 +117,7 @@ CONFIG_CPU_MINUTEIA=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
CONFIG_CMOV_UNSUPPORTED=y
|
# CONFIG_CMOV is not set
|
||||||
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
||||||
CONFIG_CPU_SSE_UNSUPPORTED=y
|
CONFIG_CPU_SSE_UNSUPPORTED=y
|
||||||
CONFIG_CACHE_LINE_SIZE=0
|
CONFIG_CACHE_LINE_SIZE=0
|
||||||
|
|
|
@ -96,6 +96,7 @@ CONFIG_CPU_ATOM=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
|
CONFIG_CMOV=y
|
||||||
# CONFIG_CPU_SSE_UNSUPPORTED is not set
|
# CONFIG_CPU_SSE_UNSUPPORTED is not set
|
||||||
CONFIG_CACHE_LINE_SIZE=64
|
CONFIG_CACHE_LINE_SIZE=64
|
||||||
|
|
||||||
|
|
|
@ -96,7 +96,7 @@ CONFIG_CPU_MINUTEIA=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
CONFIG_CMOV_UNSUPPORTED=y
|
# CONFIG_CMOV is not set
|
||||||
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
||||||
CONFIG_CPU_SSE_UNSUPPORTED=y
|
CONFIG_CPU_SSE_UNSUPPORTED=y
|
||||||
CONFIG_CACHE_LINE_SIZE=0
|
CONFIG_CACHE_LINE_SIZE=0
|
||||||
|
|
|
@ -96,7 +96,7 @@ CONFIG_CPU_MINUTEIA=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
CONFIG_CMOV_UNSUPPORTED=y
|
# CONFIG_CMOV is not set
|
||||||
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
||||||
CONFIG_CPU_SSE_UNSUPPORTED=y
|
CONFIG_CPU_SSE_UNSUPPORTED=y
|
||||||
CONFIG_CACHE_LINE_SIZE=0
|
CONFIG_CACHE_LINE_SIZE=0
|
||||||
|
|
|
@ -72,7 +72,7 @@ are defined in arch.h.
|
||||||
|
|
||||||
SECTION_FUNC(TEXT, find_first_set)
|
SECTION_FUNC(TEXT, find_first_set)
|
||||||
|
|
||||||
#if !defined(CONFIG_CMOV_UNSUPPORTED)
|
#if defined(CONFIG_CMOV)
|
||||||
|
|
||||||
movl $0xffffffff, %ecx /* preload for 0 return value */
|
movl $0xffffffff, %ecx /* preload for 0 return value */
|
||||||
bsfl 0x4(%esp), %eax /* bit scan "forward" */
|
bsfl 0x4(%esp), %eax /* bit scan "forward" */
|
||||||
|
@ -91,7 +91,7 @@ BRANCH_LABEL(ffsLsb_argNotZero) /* this label serves find_first_set() & find_las
|
||||||
addl $1, %eax
|
addl $1, %eax
|
||||||
ret
|
ret
|
||||||
|
|
||||||
#endif /* !CONFIG_CMOV_UNSUPPORTED */
|
#endif /* CONFIG_CMOV */
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -115,7 +115,7 @@ BRANCH_LABEL(ffsLsb_argNotZero) /* this label serves find_first_set() & find_las
|
||||||
|
|
||||||
SECTION_FUNC(TEXT, find_last_set)
|
SECTION_FUNC(TEXT, find_last_set)
|
||||||
|
|
||||||
#if !defined(CONFIG_CMOV_UNSUPPORTED)
|
#if defined(CONFIG_CMOV)
|
||||||
|
|
||||||
movl $0xffffffff, %ecx /* preload for 0 return value */
|
movl $0xffffffff, %ecx /* preload for 0 return value */
|
||||||
bsrl 0x4(%esp), %eax /* bit scan "reverse" */
|
bsrl 0x4(%esp), %eax /* bit scan "reverse" */
|
||||||
|
@ -130,5 +130,5 @@ SECTION_FUNC(TEXT, find_last_set)
|
||||||
xorl %eax, %eax /* return 0 when arg=0 */
|
xorl %eax, %eax /* return 0 when arg=0 */
|
||||||
ret
|
ret
|
||||||
|
|
||||||
#endif /* !CONFIG_CMOV_UNSUPPORTED */
|
#endif /* CONFIG_CMOV */
|
||||||
|
|
||||||
|
|
|
@ -117,7 +117,7 @@ CONFIG_CPU_MINUTEIA=y
|
||||||
CONFIG_ISA_IA32=y
|
CONFIG_ISA_IA32=y
|
||||||
CONFIG_HARDWARE_BP_SUPPORTED=y
|
CONFIG_HARDWARE_BP_SUPPORTED=y
|
||||||
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
# CONFIG_TICKLESS_IDLE_UNSUPPORTED is not set
|
||||||
CONFIG_CMOV_UNSUPPORTED=y
|
# CONFIG_CMOV is not set
|
||||||
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
CONFIG_CPU_FLOAT_UNSUPPORTED=y
|
||||||
CONFIG_CPU_SSE_UNSUPPORTED=y
|
CONFIG_CPU_SSE_UNSUPPORTED=y
|
||||||
CONFIG_CACHE_LINE_SIZE=0
|
CONFIG_CACHE_LINE_SIZE=0
|
||||||
|
|
|
@ -141,7 +141,7 @@ static inline __attribute__((always_inline))
|
||||||
|
|
||||||
__asm__ volatile (
|
__asm__ volatile (
|
||||||
|
|
||||||
#if !defined(CONFIG_CMOV_UNSUPPORTED)
|
#if defined(CONFIG_CMOV)
|
||||||
|
|
||||||
"bsfl %1, %0;\n\t"
|
"bsfl %1, %0;\n\t"
|
||||||
"cmovzl %2, %0;\n\t"
|
"cmovzl %2, %0;\n\t"
|
||||||
|
@ -159,7 +159,7 @@ static inline __attribute__((always_inline))
|
||||||
: "rm" (op)
|
: "rm" (op)
|
||||||
: "cc"
|
: "cc"
|
||||||
|
|
||||||
#endif /* !CONFIG_CMOV_UNSUPPORTED */
|
#endif /* CONFIG_CMOV */
|
||||||
);
|
);
|
||||||
|
|
||||||
return (bitpos + 1);
|
return (bitpos + 1);
|
||||||
|
@ -192,7 +192,7 @@ static inline inline __attribute__((always_inline))
|
||||||
|
|
||||||
__asm__ volatile (
|
__asm__ volatile (
|
||||||
|
|
||||||
#if !defined(CONFIG_CMOV_UNSUPPORTED)
|
#if defined(CONFIG_CMOV)
|
||||||
|
|
||||||
"bsrl %1, %0;\n\t"
|
"bsrl %1, %0;\n\t"
|
||||||
"cmovzl %2, %0;\n\t"
|
"cmovzl %2, %0;\n\t"
|
||||||
|
@ -209,7 +209,7 @@ static inline inline __attribute__((always_inline))
|
||||||
: "rm" (op)
|
: "rm" (op)
|
||||||
: "cc"
|
: "cc"
|
||||||
|
|
||||||
#endif /* CONFIG_CMOV_UNSUPPORTED */
|
#endif /* CONFIG_CMOV */
|
||||||
);
|
);
|
||||||
|
|
||||||
return (bitpos + 1);
|
return (bitpos + 1);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue