Re: Undefined __aeabi_uidiv references in blobs with 4.8 toolchain

2013-05-08 Thread Bernhard Rosenkränzer
On 7 May 2013 10:37, Matthew Gretton-Dann
wrote:

> On 04/05/13 00:21, Bernhard Rosenkränzer wrote:
>
> How did you diff gcc-4.7/libgcc and gcc-4.8/libgcc?


Checked out the sources and looked at the output of
diff -urN gcc-4.7/libgcc gcc-4.8/libgcc


>  What does readelf give as the symbol types and visibility?


Symbol visibility does seem to have changed (even though I didn't spot it
in the source)...


4.7:
File: libgcc.a(_udivsi3.o)
16:  0 FUNCGLOBAL DEFAULT1 __aeabi_uidiv

4.8:
File: libgcc.a(_udivsi3.o)
16:  0 FUNCGLOBAL HIDDEN 1 __aeabi_uidiv


Will take another look to see where it changed... Either I missed it or
it's a default setting outside of the libgcc directory.

ttyl
bero
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Undefined __aeabi_uidiv references in blobs with 4.8 toolchain

2013-05-08 Thread Matthew Gretton-Dann

Bero,

So looking at how I build GCC __aeabi_uidiv is HIDDEN for 4.7 and 4.8.

Looking at the source for libgcc one way the use of the hidden attribute is 
determined at configure time with an assembler test.


So can you you post your libgcc/config.log somewhere for 4.7 & 4.8, and 
point us to them?  (To save time I'm also probably going to want the 
complete build log at some stage for libgcc - so it is probably worth 
posting those as well).


In particular I am interested in the values of vs_hide and 
libgcc_cv_hidden_visibility_attribute.


Thanks,

Matt

On 08/05/13 10:10, Bernhard Rosenkränzer wrote:

On 7 May 2013 10:37, Matthew Gretton-Dann
wrote:


On 04/05/13 00:21, Bernhard Rosenkränzer wrote:

How did you diff gcc-4.7/libgcc and gcc-4.8/libgcc?



Checked out the sources and looked at the output of
diff -urN gcc-4.7/libgcc gcc-4.8/libgcc



  What does readelf give as the symbol types and visibility?



Symbol visibility does seem to have changed (even though I didn't spot it
in the source)...


4.7:
File: libgcc.a(_udivsi3.o)
 16:  0 FUNCGLOBAL DEFAULT1 __aeabi_uidiv

4.8:
File: libgcc.a(_udivsi3.o)
 16:  0 FUNCGLOBAL HIDDEN 1 __aeabi_uidiv


Will take another look to see where it changed... Either I missed it or
it's a default setting outside of the libgcc directory.

ttyl
bero




--
Matthew Gretton-Dann
Toolchain Working Group, Linaro

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


LLVM @ IBM

2013-05-08 Thread Renato Golin
Talking about Ulrich's presentation at EuroLLVM 2013:

http://www.phoronix.com/scan.php?page=news_item&px=MTM2NjU

One less thing I have to write about, yay! ;)

--renato
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Undefined __aeabi_uidiv references in blobs with 4.8 toolchain

2013-05-08 Thread Bernhard Rosenkränzer
Hi,

On 8 May 2013 12:41, Matthew Gretton-Dann
wrote:

So looking at how I build GCC __aeabi_uidiv is HIDDEN for 4.7 and 4.8.
>

Odd... I always get DEFAULT __aeabi_uidiv with 4.7 and HIDDEN with 4.8.


> So can you you post your libgcc/config.log somewhere for 4.7 & 4.8, and
> point us to them?  (To save time I'm also probably going to want the
> complete build log at some stage for libgcc - so it is probably worth
> posting those as well).
>

I've attached the config logs - full builds are still running.


> In particular I am interested in the values of vs_hide and
> libgcc_cv_hidden_visibility_attribute.
>

vs_hide isn't set in either config.log,
libgcc_cv_hidden_visibility_attribute is yes in both.

ttyl
bero


config-log-4.7.xz
Description: Binary data


config-log-4.8.xz
Description: Binary data
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Undefined __aeabi_uidiv references in blobs with 4.8 toolchain

2013-05-08 Thread Bernhard Rosenkränzer
On 8 May 2013 15:29, Bernhard Rosenkränzer  wrote:

> I've attached the config logs - full builds are still running.
>

I've figured out what's going on.

In libgcc/Makefile.in, lines 368+ (in 4.8)/lines 375+ (in 4.7), there's
some AWK trickery to add .hidden to asm code.

The difference is that in 4.7, that code is inside

ifeq ($(enable_shared),yes)

while 4.8 moved it outside of that block.

The result is that on regular Linux, you'd have the symbols hidden in both
4.7 and 4.8 -- but on Android (where for whatever reason the decision was
not to have a libgcc_s), it gets hidden only in 4.8.

The problematic upstream commit is svn 190588.

I think for now I'll just revert that change in Android toolchain builds to
keep the hack in Bionic working - but I wonder what a proper fix could look
like (or rather, a proper fix that we can do - meaning one that doesn't
involve fixing up blobs we don't have the source to or getting Android
upstream to introduce libgcc_s).

ttyl
bero
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Undefined __aeabi_uidiv references in blobs with 4.8 toolchain

2013-05-08 Thread Matthew Gretton-Dann

On 08/05/13 20:53, Bernhard Rosenkränzer wrote:

On 8 May 2013 15:29, Bernhard Rosenkränzer 
wrote:



I've attached the config logs - full builds are still running.



I've figured out what's going on.

In libgcc/Makefile.in, lines 368+ (in 4.8)/lines 375+ (in 4.7), there's
some AWK trickery to add .hidden to asm code.

The difference is that in 4.7, that code is inside

ifeq ($(enable_shared),yes)

while 4.8 moved it outside of that block.

The result is that on regular Linux, you'd have the symbols hidden in both
4.7 and 4.8 -- but on Android (where for whatever reason the decision was
not to have a libgcc_s), it gets hidden only in 4.8.

The problematic upstream commit is svn 190588.

I think for now I'll just revert that change in Android toolchain builds to
keep the hack in Bionic working - but I wonder what a proper fix could look
like (or rather, a proper fix that we can do - meaning one that doesn't
involve fixing up blobs we don't have the source to or getting Android
upstream to introduce libgcc_s).


The original discussion about this patch is here:

http://gcc.gnu.org/ml/gcc-patches/2012-08/msg01462.html

Thanks,

Matt


--
Matthew Gretton-Dann
Toolchain Working Group, Linaro

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Undefined __aeabi_uidiv references in blobs with 4.8 toolchain

2013-05-08 Thread Bernhard Rosenkränzer
On 8 May 2013 22:07, Matthew Gretton-Dann
wrote:

> On 08/05/13 20:53, Bernhard Rosenkränzer wrote:
>
>> The problematic upstream commit is svn 190588.
>>
>
> The original discussion about this patch is here:
>
> http://gcc.gnu.org/ml/gcc-patches/2012-08/msg01462.html
>

Bug report and patch here:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57221

Not too optimistic about getting the patch accepted though, since the
proper fix really would be to just rebuild the *ing blobs.

ttyl
bero
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain