GP32 Longjmp


pea

developer
Joined
Oct 3, 2004
Messages
1,089
Age
46
Location
New Zealand
Website
www.projectitis.com
Hi all,

Just trying to debug png loading. I think there is an issue with longjmp on the GP32 (http://www.opengroup.org/onlinepubs/007908...sh/longjmp.html) which is used to handle errors in the PNG library.

Does anybody have experience with this function and can tell me whether ther would be a problem with this command on ARM, or whther it is just the GP32 in general that doesn't like it?

It seems to work intermittantly - and (on geepee32) causes the emulator to only work once (requiring a shutdown and a restart after each program execution). It seems to work sometimes on real hardware, and sometimes seems to causes the lcd to do really weird things!
 
Mr.Mirko - if you read this - is it possible to recompile libM with the updates to setjmp/longjmp as defined in the article above? I see the header files are there, but the source code is not :(
 
Uhm, that's part of libgcc, not libmirko, so you need to complain to the gcc people.
Perhaps other compilers like ADS don't have this problem.
 
Yes, sorry, I didn't mean to 'blame' Mr.Mirko for this code - I just assumed that perhaps he would know where to start trying to find out how to fix it :)

Is it in libgcc or libc? How can I tell?
These libraries don't need to be explictly linked during compile?
 
pea posted on May 1 2005 at 09:55 AM said:
Yes, sorry, I didn't mean to 'blame' Mr.Mirko for this code - I just assumed that perhaps he would know where to start trying to find out how to fix it :)

Is it in libgcc or libc? How can I tell?
These libraries don't need to be explictly linked during compile?

libc is on a linux system the glibc ( very big ,about 3MB compiled )
libc on gp32 is the compiled newlib ( small, about 500kb )
libgcc is the compiled toolchain for the gcc compiler.

libc supports commands for enhanced c/c++ commands.
like malloc, free, ...

The patch you posted here, was 2 years old, and i think is already included in the libgcc from 3.4.0 on.

cheers, Mirko
 
Last edited by a moderator:
Back
Top