Re: [edk2] [Patch] EdkCompatabilityPkg: fix X64 clang compiler errors

Subject: Re: [edk2] [Patch] EdkCompatabilityPkg: fix X64 clang compiler errors

From: "Gao, Liming" <liming.gao@intel.com>

To: "edk2-devel@lists.sourceforge.net" <edk2-devel@lists.sourceforge.net>

Date: 2011-07-08 17:35:01

Andrew:
  I hope your patch is a clean up version. 

Thanks
Liming
-----Original Message-----
From: Andrew Fish [mailto:afish@apple.com] 
Sent: Friday, July 08, 2011 1:35 AM
To: edk2-devel@lists.sourceforge.net
Subject: Re: [edk2] [Patch] EdkCompatabilityPkg: fix X64 clang compiler errors

Liming,

I agree this code needs some more cleanup. We don't need the inline function, I was just trying to minimize the change. Are you going to clean it up, or would you like me to do it?

Andrew Fish





On Jul 7, 2011, at 6:54 AM, Gao, Liming wrote:

> Andrew:
> After apply the change in three Print.c files, GetFlagsAndWidth() function will be not used any longer. So, I suggest to remove GetFlagsAndWidth().
> Besides, your patch expands the logic in GetFlagsAndWidth() as the inline function. Does it require as the inline function?
> 
> Thanks
> Liming
> -----Original Message-----
> From: Andrew Fish [mailto:afish@apple.com] 
> Sent: Wednesday, June 29, 2011 5:13 AM
> To: edk2-devel@lists.sourceforge.net
> Cc: lgao4@users.sourceforge.net
> Subject: [edk2] [Patch] EdkCompatabilityPkg: fix X64 clang compiler errors
> 
> lgao4 and edk2 community,
> 
> This patch allows the EdkCompatabilityPkg to compile with the clang compiler. In the past Xcode did not support X64, recently the open source version of the Xcode clang compiler has been updated to support the EFI X64 ABI. 
> 
> The biggest issues were in two groups:
> 1) Illegal C code. There was code that assumed a VA_LIST was a pointer. This is non portable C and has been removed from the edk2.  IMHO all this code should be removed from EdkCompatabilityPkg as well as it will just keep causing issues that have already been fixed. My patch removed functions that pass pointers to VA_LISTS and #ifdefs out VA_LIST pinter math, and force the functions to return an error. 
> 2) Xcode assembler is much pickier than gcc. Most of the code has been already fixed in the MdePkg, or there is a pending patch with the fix. For some of the more complex chunks of code, I hope we never need to use from the compatibility package I justed #ifdef'ed it out for __APPLE__ and inserted an int $3 (breakpoint). 
> 
> Andrew Fish
> 
> 
> ------------------------------------------------------------------------------
> All of the data generated in your IT infrastructure is seriously valuable.
> Why? It contains a definitive record of application performance, security 
> threats, fraudulent activity, and more. Splunk takes this data and makes 
> sense of it. IT sense. And common sense.
> http://p.sf.net/sfu/splunk-d2d-c2
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel


------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel