david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

Updated to REAL_CODE()

This commit is contained in:
Michael Brown 2006-05-24 13:50:40 +00:00
parent 595f161b51
commit 8110f9b082
1 changed files with 7 additions and 17 deletions

View File

@ -28,15 +28,10 @@ unsigned long currticks ( void ) {
/* Re-enable interrupts so that the timer interrupt can occur /* Re-enable interrupts so that the timer interrupt can occur
*/ */
REAL_EXEC ( rm_currticks, __asm__ __volatile__ ( REAL_CODE ( "sti\n\t"
"sti\n\t" "nop\n\t"
"nop\n\t" "nop\n\t"
"nop\n\t" "cli\n\t" ) : : );
"cli\n\t",
0,
OUT_CONSTRAINTS (),
IN_CONSTRAINTS (),
CLOBBER ( "eax" ) ); /* can't have an empty clobber list */
get_real ( ticks, BDA_SEG, 0x006c ); get_real ( ticks, BDA_SEG, 0x006c );
get_real ( midnight, BDA_SEG, 0x0070 ); get_real ( midnight, BDA_SEG, 0x0070 );
@ -54,12 +49,7 @@ unsigned long currticks ( void ) {
CPU_NAP - Save power by halting the CPU until the next interrupt CPU_NAP - Save power by halting the CPU until the next interrupt
**************************************************************************/ **************************************************************************/
void cpu_nap ( void ) { void cpu_nap ( void ) {
REAL_EXEC ( rm_cpu_nap, __asm__ __volatile__ ( REAL_CODE ( "sti\n\t"
"sti\n\t" "hlt\n\t"
"hlt\n\t" "cli\n\t" ) : : );
"cli\n\t",
0,
OUT_CONSTRAINTS (),
IN_CONSTRAINTS (),
CLOBBER ( "eax" ) ); /* can't have an empty clobber list */
} }