replace negative CMOV_UNSUPPORTED with CMOV

Change-Id: Id2aba9402495d99176eb499b1c74f86349e1164b
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
Anas Nashif 2015-07-22 13:34:59 -04:00
commit 274cc72aee
10 changed files with 20 additions and 18 deletions

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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 */

View file

@ -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

View file

@ -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);