[LinuxBIOS] v2: rewrite AMD K* CAR code

Jordan Crouse jordan.crouse at amd.com
Thu Jan 10 19:00:12 CET 2008


On 10/01/08 18:57 +0100, Carl-Daniel Hailfinger wrote:
> On 10.01.2008 03:26, Carl-Daniel Hailfinger wrote:
> > --- src/cpu/amd/car/cache_as_ram.inc~	2008-01-08 20:16:30.000000000 +0100
> > +++ src/cpu/amd/car/cache_as_ram.inc	2008-01-10 03:24:09.000000000 +0100
> > @@ -160,8 +160,15 @@
> >   * windowoffset is the 32k-aligned window into CAR size
> >   */
> >  .macro simplemask carsize, windowoffset
> > +	.set gas_bug_workaround,(((\carsize - \windowoffset) / 0x1000) - 4)
> > +	extractmask gas_bug_workaround, %eax
> > +	.set gas_bug_workaround,(((\carsize - \windowoffset) / 0x1000))
> > +	extractmask gas_bug_workaround, %edx
> > +/* Without the gas bug workaround, the entire macro would consist only of the
> > + * two lines below.
> >  	extractmask (((\carsize - \windowoffset) / 0x1000) - 4), %eax
> >  	extractmask (((\carsize - \windowoffset) / 0x1000)), %edx
> > + */
> >  .endm
> >  
> >  #if CacheSize > 0x10000
> >
> >
> >   
> 
> Add a workaround for a bug in some binutils version which strictly
> interpret whitespace as macro argument delimiter. Since the code is
> preprocessed by gcc and the tokenizer may insert whitespace, that can
> fail. http://sourceware.org/bugzilla/show_bug.cgi?id=669
> 
> Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>

Acked-by: Jordan Crouse <jordan.crouse at amd.com>
> 
> Regards,
> Carl-Daniel
> 
> 

-- 
Jordan Crouse
Systems Software Development Engineer 
Advanced Micro Devices, Inc.






More information about the coreboot mailing list