Implement ArYieldProcessor() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
All checks were successful
ci/woodpecker/push/build Pipeline was successful
This commit is contained in:
parent
286fc76577
commit
e41de62dab
@ -108,4 +108,8 @@ VOID
|
||||
ArWriteModelSpecificRegister(IN ULONG Register,
|
||||
IN ULONGLONG Value);
|
||||
|
||||
XTCDECL
|
||||
VOID
|
||||
ArYieldProcessor();
|
||||
|
||||
#endif /* __XTDK_AMD64_ARFUNCS_H */
|
||||
|
@ -104,4 +104,8 @@ VOID
|
||||
ArWriteModelSpecificRegister(IN ULONG Register,
|
||||
IN ULONGLONG Value);
|
||||
|
||||
XTCDECL
|
||||
VOID
|
||||
ArYieldProcessor();
|
||||
|
||||
#endif /* __XTDK_I686_ARFUNCS_H */
|
||||
|
@ -592,3 +592,20 @@ ArWriteModelSpecificRegister(IN ULONG Register,
|
||||
"a" (Low),
|
||||
"d" (High));
|
||||
}
|
||||
|
||||
/**
|
||||
* Yields a current thread running on the processor.
|
||||
*
|
||||
* @return This routine does not return any value.
|
||||
*
|
||||
* @since XT 1.0
|
||||
*/
|
||||
XTCDECL
|
||||
VOID
|
||||
ArYieldProcessor()
|
||||
{
|
||||
asm volatile("pause"
|
||||
:
|
||||
:
|
||||
: "memory");
|
||||
}
|
||||
|
@ -551,3 +551,20 @@ ArWriteModelSpecificRegister(IN ULONG Register,
|
||||
: "c" (Register),
|
||||
"A" (Value));
|
||||
}
|
||||
|
||||
/**
|
||||
* Yields a current thread running on the processor.
|
||||
*
|
||||
* @return This routine does not return any value.
|
||||
*
|
||||
* @since XT 1.0
|
||||
*/
|
||||
XTCDECL
|
||||
VOID
|
||||
ArYieldProcessor()
|
||||
{
|
||||
asm volatile("pause"
|
||||
:
|
||||
:
|
||||
: "memory");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user