grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Report: compil error on OSX for target=i386


From: Robert Millan
Subject: Re: Report: compil error on OSX for target=i386
Date: Sun, 23 Aug 2009 13:00:07 +0200
User-agent: Mutt/1.5.18 (2008-05-17)

On Sat, Aug 22, 2009 at 08:00:10PM +0200, Vladimir 'phcoder' Serbinenko wrote:
> On Mon, Aug 10, 2009 at 1:41 PM, Robert Millan<address@hidden> wrote:
> > On Sat, Aug 08, 2009 at 10:44:25PM +0800, Bean wrote:
> >> Hi,
> >>
> >> I also encounter this problem with apple gcc 4.0, the fix is to replace:
> >>
> >> asm volatile ("jmp *%2" : : "b" (0), "S" (real_mode_mem), "g"
> >> (params->code32_start));
> >>
> >> With:
> >>   asm volatile ("movl %0, %%ecx" : : "m" (params->code32_start));
> >>   asm volatile ("movl %0, %%esi" : : "m" (real_mode_mem));
> >>
> >>   asm volatile ("xorl %%ebx, %%ebx" : : );
> >>   asm volatile ("jmp *%%ecx" : : );
> >
> > I think I did precisely the opposite change a while ago, with the purpose of
> > general cleanup (to make it more compact and avoid generating unnecessary
> > instructions).
> What about following compromise:
> [...]

I'm not sure what's the problem here.  AFAIK inline assembly had this syntax
with GCC 4.0 already.  Did Apple cripple it in their version of GCC ?

-- 
Robert Millan

  The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
  how) you may access your data; but nobody's threatening your freedom: we
  still allow you to remove your data and not access it at all."




reply via email to

[Prev in Thread] Current Thread [Next in Thread]