NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-vax/43273: ld.elf_so frame handling breaks exception unwinding for C++



The following reply was made to PR port-vax/43273; it has been noted by GNATS.

From: "Valeriy E. Ushakov" <uwe%stderr.spb.ru@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: port-vax/43273: ld.elf_so frame handling breaks exception 
unwinding for C++
Date: Tue, 23 Nov 2010 06:44:26 +0300

 After some investigation it turns out that exceptions on VAX are
 completely broken, or rather not even implemented.
 
 I have some initial gcc patches that make unwinding work, but VAX also
 needs eh_return instruction pattern to properly adjust stack on
 return.  My knowledge of how to write gcc's machine descriptions is
 unfortunately non-existent.
 
 With exceptions fixed in general case, we can either provide manually
 written .eh_frame DWARF2 bits for _rtld_bind_start so that unwinder
 can walk through it, or implement fallback unwinder that would use
 call frame instead of DWARF2 descriptions.
 
 -uwe
 


Home | Main Index | Thread Index | Old Index