This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/21285] gij fails to handle NullPointerException exception
- From: "tsv at solvo dot ru" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 6 May 2005 22:36:29 -0000
- Subject: [Bug middle-end/21285] gij fails to handle NullPointerException exception
- References: <20050429142050.21285.tsv@solvo.ru>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From tsv at solvo dot ru 2005-05-06 22:36 -------
Ok, I think I did find the problem. The unwind logic could not unwind deeper
than "ffi_closure_osf" function defined in libffi/src/alpha/osf.S (gdb showed
call stack like corrupted).
I checked number of bytes reserved from stack in ".frame" directive for the
functions and number of bytes for call stack described in FDEs in ".eh_frame"
section. They are different by 16 bytes for each function. I modified ".frame"
directive to reserve number of bytes as defined by FDEs (although changing of
FDEs would be easier) and my test cases started to work (even "ant" stopped
crashing).
Please, review the attached patch to libffi/src/alpha/osf.S file.
Thank you.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21285