On 18/04/2012, at 1:10 PM, Fu, Chao-Ying wrote:

> Maxim Kuvyrkov wrote:
> 
>> Above definitions are OK.
> 
>  Thanks!

For avoidance of doubt, please wait for the whole patch to be approved before 
committing it.

>>>> Index: gcc/libgcc/unwind-dw2-fde-dip.c
>>>> ===================================================================
>>>> --- gcc.orig/libgcc/unwind-dw2-fde-dip.c   2012-04-03 
>> 17:07:28.000000000 -0700
>>>> +++ gcc/libgcc/unwind-dw2-fde-dip.c        2012-04-04 
>> 14:51:01.338074000 -0700
>>>> @@ -48,8 +48,9 @@
>>>> #include "gthr.h"
>>>> 
>>>> #if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \
>>>> -    && (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) \
>>>> -  || (__GLIBC__ == 2 && __GLIBC_MINOR__ == 2 && 
>> defined(DT_CONFIG)))
>>>> +    && ((defined(__BIONIC__) && (defined(mips) || 
>> defined(__mips__))) \
>>>> +        || (__GLIBC__ > 2 || (__GLIBC__ == 2 && 
>> __GLIBC_MINOR__ > 2) \
>>>> +  || (__GLIBC__ == 2 && __GLIBC_MINOR__ == 2 && 
>> defined(DT_CONFIG))))
>>>> # define USE_PT_GNU_EH_FRAME
>>>> #endif
>> 
>> What is this change for?
> 
>  For stack unwinding, MIPS needs supporting functions in libgcc to 
> work with eh_frame for Android.
> (Note that ARM has its own unwinding functions in gcc/config/arm/.  It 
> doesn't use eh_frame.)
> The file is enabled for GLIBC originally.  Thus, I add a new test to enable it
> for MIPS Android BIONIC build.

Please use format that other C libraries use (instead of mixing together GLIBC 
and Bionic definitions):

#if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \
    && defined(__BIONIC__)
# define USE_PT_GNU_EH_FRAME
#endif

Also, as far as I can tell, this change would also apply for x86, and for ARM 
having USE_PT_GNU_EH_FRAME defined will not hurt.  So please make the 
definition architecture-agnostic.

Thank you,

--
Maxim Kuvyrkov
CodeSourcery / Mentor Graphics

Reply via email to