2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
Avoid clobbering %ebx/%rbx in inline assembly with Apple's CC * efiemu/runtime/efiemu.c (write_cmos): use %cl instead of %bl as temporary storage * include/grub/i386/tsc.h (grub_get_tsc): restore %rbx/%ebx when using Apple's CC (grub_cpu_is_tsc_supported): likewise * loader/i386/xnu.c (guessfsb): restore %rbx/%ebx in inline assembly
This commit is contained in:
parent
3e32590112
commit
cc6c3ac1bf
4 changed files with 90 additions and 5 deletions
|
@ -162,8 +162,8 @@ static inline void
|
|||
write_cmos (grub_uint8_t addr, grub_uint8_t val)
|
||||
{
|
||||
__asm__ __volatile__ ("outb %%al,$0x70\n"
|
||||
"mov %%bl, %%al\n"
|
||||
"outb %%al,$0x71": :"a" (addr), "b" (val));
|
||||
"mov %%cl, %%al\n"
|
||||
"outb %%al,$0x71": :"a" (addr), "c" (val));
|
||||
}
|
||||
|
||||
static inline grub_uint8_t
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue