[edk2-devel] [Patch 05/12] MdePkg BaseIoLibIntrinsic: Remove __inline__ attribute for IO functions

Liming Gao liming.gao at intel.com
Sat Oct 12 06:18:50 UTC 2019


Jordan:

>-----Original Message-----
>From: Justen, Jordan L
>Sent: Saturday, October 12, 2019 3:22 AM
>To: afish at apple.com; Laszlo Ersek <lersek at redhat.com>;
>devel at edk2.groups.io; Gao, Liming <liming.gao at intel.com>
>Subject: Re: [edk2-devel] [Patch 05/12] MdePkg BaseIoLibIntrinsic: Remove
>__inline__ attribute for IO functions
>
>On 2019-10-10 09:32:19, Laszlo Ersek wrote:
>> Hi Liming, Andrew,
>>
>> On 10/10/19 14:32, Liming Gao wrote:
>> > Laszlo:
>> >
>> >> -----Original Message-----
>> >> From: Laszlo Ersek <lersek at redhat.com>
>> >> Sent: Wednesday, October 9, 2019 4:22 AM
>> >> To: Gao, Liming <liming.gao at intel.com>; devel at edk2.groups.io;
>afish at apple.com
>> >> Subject: Re: [edk2-devel] [Patch 05/12] MdePkg BaseIoLibIntrinsic:
>Remove __inline__ attribute for IO functions
>> >>
>> >> On 10/08/19 16:47, Gao, Liming wrote:
>> >>
>> >>>     [Liming] I verify GCC5 tool chain. I will verify GCC48/GCC49 and
>> >>>     XCODE5.
>> >>>
>> >>>     I don’t know the specific reason about __inline__. If there is no
>> >>>     impact on
>> >>>
>> >>>     other GCC tool chain, I prefer to remove them.
>> >>
>> >>> [Liming] This seems the remaining clean up task. So, I prefer to remove
>> >>> __inline__ if no impact on GCC tool chain.
>> >>
>> >> OK. Given your testing with GCC48, I'm fine.
>> >>
>> > With this patch set, I verify GCC48/GCC49/GCC5 on Ovmf3264. They can all
>boot to Shell.
>> > Are they enough?
>>
>> Would you guys agree with the following commit message, on this patch?
>>
>> """
>> __inline__ has no discernible effect with the GCC48 / GCC49 / GCC5
>> toolchains, but it breaks the build with CLANG9.
>>
>> Remove __inline__.
>> """
>
>Would it be more accurate to say it didn't have a functional
>difference? Did we rule out that it might have made a difference in
>code gen?

Yes. The function are same. I verify GCC5 before and after this change. 
The generated image is also same. So, there is no different code gen. 

Thanks
Liming
>
>I guess I wouldn't be surprised if the older non-LTO toolchains didn't
>make use of it anyway. So, maybe there is no difference in code gen.
>
>With LTO the linker is hopefully smarter about auto-inlining anyhow.
>
>-Jordan

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#48859): https://edk2.groups.io/g/devel/message/48859
Mute This Topic: https://groups.io/mt/34309058/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list