In a nutshell, when the image is compiled with -O3 and more recent libgcc than what used to build the mali binaries, some symbols that libUMP.so requries are lost. I've tested that reverting that commit produces a working image.
As for solutions, from IRC discussions:
17:58 < bero> Well, the best thing to do would be to get a recompiled version that uses our compiler and -O3, to make sure it doesn't require __aeabi_llsr to be exported...
but I understood that bero is in the process of finding a way to inject the required implementations in somehow.
The problem has been identified and verified to be caused by this change:
http:// review. android. git.linaro. org/#change, 1561
In a nutshell, when the image is compiled with -O3 and more recent libgcc than what used to build the mali binaries, some symbols that libUMP.so requries are lost. I've tested that reverting that commit produces a working image.
As for solutions, from IRC discussions:
17:58 < bero> Well, the best thing to do would be to get a recompiled version that uses our compiler and -O3, to make sure it doesn't require __aeabi_llsr to be exported...
but I understood that bero is in the process of finding a way to inject the required implementations in somehow.