Comment out problematic inline asm statement for GCC 4. The direct reference
to sAPMBiosEntry generates undefined symbols and I'm not in a condition to fix this right now. Added a TODO. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28986 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -91,6 +91,9 @@ apm_error(uint32 error)
|
|||||||
static status_t
|
static status_t
|
||||||
call_apm_bios(bios_regs *regs)
|
call_apm_bios(bios_regs *regs)
|
||||||
{
|
{
|
||||||
|
#if _GNUC_ >= 4
|
||||||
|
// TODO: Fix this for GCC 4.3! The direct reference to sAPMBiosEntry
|
||||||
|
// in the ASM below causes undefined references.
|
||||||
asm volatile(
|
asm volatile(
|
||||||
"pushfl; "
|
"pushfl; "
|
||||||
"pushl %%ebp; "
|
"pushl %%ebp; "
|
||||||
@@ -104,6 +107,7 @@ call_apm_bios(bios_regs *regs)
|
|||||||
"=S" (regs->esi), "=m" (regs->flags)
|
"=S" (regs->esi), "=m" (regs->flags)
|
||||||
: "a" (regs->eax), "b" (regs->ebx), "c" (regs->ecx)
|
: "a" (regs->eax), "b" (regs->ebx), "c" (regs->ecx)
|
||||||
: "memory", "edi", "cc");
|
: "memory", "edi", "cc");
|
||||||
|
#endif
|
||||||
|
|
||||||
if (regs->flags & CARRY_FLAG)
|
if (regs->flags & CARRY_FLAG)
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
|
|||||||
Reference in New Issue
Block a user