delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mailnull set sender to djgpp-bounces using -f |
From: | "Boris Vrbanić" <boris DOT vrbanic AT hi DOT hinet DOT hr> |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Question about "unwind-dw2.c" |
Date: | Mon, 13 May 2002 06:51:08 +0200 |
Organization: | HThinet |
Lines: | 44 |
Message-ID: | <abngn8$1vjk$1@as201.hinet.hr> |
NNTP-Posting-Host: | ad7-m235.net.hinet.hr |
X-Trace: | as201.hinet.hr 1021265448 65140 195.29.135.235 (13 May 2002 04:50:48 GMT) |
X-Complaints-To: | abuse AT hinet DOT hr |
NNTP-Posting-Date: | Mon, 13 May 2002 04:50:48 +0000 (UTC) |
X-Priority: | 3 |
X-MSMail-Priority: | Normal |
X-Newsreader: | Microsoft Outlook Express 6.00.2600.0000 |
X-MimeOLE: | Produced By Microsoft MimeOLE V6.00.2600.0000 |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Reply-To: | djgpp AT delorie DOT com |
Question is about following structure - reg field - and two functions dealing with it: struct _Unwind_Context { void *reg[DWARF_FRAME_REGISTERS+1]; void *cfa; void *ra; void *lsda; struct dwarf_eh_bases bases; _Unwind_Word args_size; }; inline _Unwind_Word _Unwind_GetGR (struct _Unwind_Context *context, int index) { /* This will segfault if the register hasn't been saved. */ return * (_Unwind_Word *) context->reg[index]; } inline void _Unwind_SetGR (struct _Unwind_Context *context, int index, _Unwind_Word val) { * (_Unwind_Word *) context->reg[index] = val; } And the question is: which function and at what point of exception handling is responsible of filling reg pointers? eh_personality function is writting to reg 0 and 1 but address is NULL and that causes page fault in my OS (I am trying to implement libsupc++ library). I have spent entire week to figure out how it works or should work - but nothing helped... Can anyone help me? Please!!!
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |