This is the mail archive of the
cygwin-cvs@cygwin.com
mailing list for the Cygwin project.
src/winsup/cygwin ChangeLog.64bit exception.h ...
- From: corinna at cygwin dot com
- To: cygwin-cvs at cygwin dot com
- Date: 25 Feb 2013 12:44:29 -0000
- Subject: src/winsup/cygwin ChangeLog.64bit exception.h ...
CVSROOT: /cvs/src
Module name: src
Branch: cygwin-64bit-branch
Changes by: corinna@sourceware.org 2013-02-25 12:44:29
Modified files:
winsup/cygwin : ChangeLog.64bit exception.h exceptions.cc
wincap.cc wincap.h
Log message:
* exception.h (class exception): Add handler_installed member.
Change parameters to handle method to match high-level exception
handler calls.
(exception::exception): On x86_64, install exception handler only
once. Explain what we do.
* exceptions.cc (_AFMT): Change to only 11 digits on x86_64.
(cygwin_exception::dump_exception): Print Rip with only 11 digits.
Print 64 bit registers with 0-padding.
(class stack_info): Add members c and hist on x86_64.
(stack_info::init): Take PCONTEXT rather than bool as third parameter.
Tweak code accordingly. Initialize c and hist on x86_64.
(stack_info::walk): Add implementation for x86_64. Drop unneeded
#ifndef in 32 bit code.
(cygwin_exception::dumpstack): Call thestack.init with context as
parameter. Change header output for x86_64.
(cygwin_stackdump): Prefer RtlCaptureContext over GetThreadContext.
(CYG_EXC_CONTINUE_EXECUTION): Define generic definition matching all
platforms.
(CYG_EXC_CONTINUE_SEARCH): Ditto.
(exception::handler_installed): Define here.
(exception::handle): Define according to declaration in exception.h.
Create 32 bit parameters as local variable on 64 bit. Change all
return statements to use generic definitions. Simplify setting framep
on x86_64. Disable setting frame-based exception handler on x86_64.
Fix formatting of klog output for x86_64.
(signal_exit): Create context for cygwin_exception creation.
(sigpacket::process): Prefer RtlCaptureContext over GetThreadContext.
* wincap.h (wincaps::has_rtl_capture_context): New element.
* wincap.cc: Implement above element throughout.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/ChangeLog.64bit.diff?cvsroot=src&only_with_tag=cygwin-64bit-branch&r1=1.1.2.107&r2=1.1.2.108
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/exception.h.diff?cvsroot=src&only_with_tag=cygwin-64bit-branch&r1=1.5.2.4&r2=1.5.2.5
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/exceptions.cc.diff?cvsroot=src&only_with_tag=cygwin-64bit-branch&r1=1.391.2.15&r2=1.391.2.16
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/wincap.cc.diff?cvsroot=src&only_with_tag=cygwin-64bit-branch&r1=1.125.2.2&r2=1.125.2.3
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/wincap.h.diff?cvsroot=src&only_with_tag=cygwin-64bit-branch&r1=1.104.2.3&r2=1.104.2.4