Commit Graph

155 Commits

Author SHA1 Message Date
Alexandre Julliard 9e6903c4b3 ntdll: Restructure x86_64 exception processing to treat all functions with missing exception data as leaf functions. 2010-04-09 13:15:41 +02:00
Eric Pouech 2bebb68a0b ntdll: On x86_64 systems (as on i386 ones), hw breakpoints must generate a EXCEPTION_SINGLE_STEP exception. 2010-04-07 13:50:39 +02:00
Eric Pouech 27fb22637a ntdll: Notify valgrind for stack management while in exception. 2010-02-23 12:06:47 +01:00
Alexandre Julliard 866db819b8 ntdll: Add stubs for RtlAddFunctionTable and RtlDeleteFunctionTable. 2009-12-04 14:34:45 +01:00
Alexandre Julliard d4f1fffacc ntdll: Moved the TEB allocation routines to the platform-specific files. 2009-11-19 12:25:52 +01:00
Alexandre Julliard d45fca8f7c ntdll: Moved RtlCaptureStackBackTrace stub to the cpu-specific files. 2009-11-11 17:19:23 +01:00
Alexandre Julliard 905609b73b ntdll: Assume leaf function when we can't find exception information for an ELF module. 2009-10-16 13:39:15 +02:00
Alexandre Julliard 690cf4a6c8 ntdll: Use a more drastic (and simpler) method for unwinding the stack on thread exit. 2009-08-29 16:48:30 +02:00
Alexandre Julliard 8824deb6c6 ntdll: Add support for Dwarf expressions in call frame information. 2009-08-28 18:25:20 +02:00
Alexandre Julliard af22daf72b ntdll: Add support for unwinding the signal stack on x86_64. 2009-08-28 18:24:06 +02:00
Alexandre Julliard ecdcf060a5 ntdll: Unwind the stack before calling exit/abort_thread.
This prevents pthread_exit() from trying to do it and failing.
2009-08-28 12:15:07 +02:00
Alexandre Julliard 8101a2fa1e ntdll: Move the abort_thread() function to the CPU-specific files to allow redefining it. 2009-08-28 11:54:50 +02:00
Alexandre Julliard b8ae3f073b ntdll: Fix handling of the duplicate MxCsr entry in the x86_64 context. 2009-08-27 16:49:53 +02:00
Alexandre Julliard 70c39c4456 ntdll: Correctly jump to the modified context after an exception on x86_64. 2009-08-26 21:24:17 +02:00
Alexandre Julliard 0610549529 ntdll: Move all thread exit processing to exit_thread(), and make RtlExitUserThread() CPU-specific. 2009-06-18 17:06:21 +02:00
Alexandre Julliard f124c7cc38 ntdll: Simplify the thread startup routine and make it CPU-specific. 2009-06-18 17:01:44 +02:00
Alexandre Julliard 98b8160b73 ntdll: Add support for calling the TEB exception chain handlers on x86_64. 2009-06-18 15:17:26 +02:00
Alexandre Julliard c9deac1126 ntdll: Implement stack unwinding for x86_64 builtin modules based on the Dwarf data. 2009-06-18 15:17:12 +02:00
Alexandre Julliard a19db6dc11 ntdll: Handle x86_64 signals on a separate signal stack. 2009-06-16 15:27:48 +02:00
Alexandre Julliard e65ebee63f ntdll: Add appropriate stdcall decorations to assembly functions. 2009-06-15 13:42:26 +02:00
Alexandre Julliard 3aa266f8f3 ntdll: Implement RtlUnwindEx for x86_64. 2009-05-22 15:16:29 +02:00
Alexandre Julliard 2c63d1d7dd ntdll: Implement __C_specific_handler for x86_64. 2009-05-22 15:16:16 +02:00
Alexandre Julliard ad7b282439 ntdll: Initial support for dispatching exceptions to stack handlers on x86_64. 2009-05-22 12:48:05 +02:00
Alexandre Julliard 7634ce154a ntdll: Implemented RtlLookupFunctionEntry for x86_64. 2009-05-22 11:48:30 +02:00
Alexandre Julliard 6c35e3f47c ntdll: Add test cases for the returned frame value in RtlVirtualUnwind. 2009-05-20 13:33:32 +02:00
Alexandre Julliard 1d4747c35f ntdll: Add support for some function epilogs in RtlVirtualUnwind. 2009-05-20 13:32:47 +02:00
Alexandre Julliard f7b1e94f98 ntdll: Initial implementation of RtlVirtualUnwind on x86_64. 2009-05-15 20:19:28 +02:00
Alexandre Julliard 47d7702522 ntdll: Added a stub for RtlUnwindEx on x86_64. 2009-05-15 20:18:33 +02:00
Alexandre Julliard a950910eec ntdll: Save all segment registers on x86_64. Implement set_cpu_context. 2009-05-01 18:02:40 +02:00
Alexandre Julliard 9968d84973 ntdll: Use standard siginfo signal handlers on all platforms. 2009-05-01 17:57:29 +02:00
Alexandre Julliard c5a57e7d13 ntdll: Move NtRaiseException and RtlUnwind implementations to the CPU-specific files. 2009-04-30 13:23:15 +02:00
Alexandre Julliard 7f9750550a ntdll: Set the exception address to the program counter in RtlRaiseException. 2009-04-10 13:17:12 +02:00
Alexandre Julliard f4eee1c731 ntdll: Move the RtlRaiseException implementation into the respective platform-specific files. 2009-04-10 13:14:05 +02:00
Alexandre Julliard 48199d7074 ntdll: Add a raise_status function and avoid exporting __regs_RtlRaiseException. 2009-04-10 13:09:06 +02:00
Alexandre Julliard 0865c278f2 ntdll: Set the proper context flags in the signal handlers for x86_64. 2009-04-08 20:40:29 +02:00
Alexandre Julliard 5316dd011f server: Define a generic context structure instead of using the platform-specific version. 2009-04-08 19:59:23 +02:00
Alexandre Julliard 75be87dd75 ntdll: Move the copy_context function into the respective CPU-specific files. 2009-03-13 11:31:25 +01:00
Alexandre Julliard cc933f586a ntdll: Moved exit_thread and abort_thread functions to thread.c. 2009-02-20 18:07:41 +01:00
Alexandre Julliard 66255772fc ntdll: Move the CPU-specific handling of current TEB to the respective signal files. 2009-02-18 13:04:50 +01:00
Austin English 633e069c67 ntdll: Add support for NetBSD (64-bit). 2009-01-20 12:23:32 +01:00
Alexandre Julliard 14c452fe78 ntdll: Replaced get_cpu_context by RtlCaptureContext. Implemented it for x86_64. 2009-01-06 17:50:34 +01:00
Maarten Lankhorst 768160e944 ntdll: Make all exported wine functions CDECL. 2008-12-17 15:02:25 +01:00
Alexandre Julliard 50d6b7fb54 ntdll: Added stubs for RtlLookupFunctionEntry and RtlVirtualUnwind. 2008-12-08 19:29:06 +01:00
Alexandre Julliard 81b9ca5dbd ntdll: Pass the error code to VIRTUAL_HandleFault, and allow it to ignore the exception.
Also rename it to virtual_handle_fault for consistency.
2008-11-25 12:02:16 +01:00
Alexandre Julliard 531ff0be26 ntdll: Split the signal setup into process-wide and thread-specific routines. 2008-07-03 20:18:23 +02:00
Alexandre Julliard 3b244b95b2 server: Use SIGQUIT instead of SIGTERM to terminate a thread.
This allows keeping the default SIGTERM behavior of killing the whole
process.
2007-12-20 12:19:35 +01:00
Andrew Talbot 0108667754 ntdll: Replace inline static with static inline. 2007-03-17 20:03:57 +01:00
Alexandre Julliard c388c58b9f ntdll: Make the server signal mask global. 2007-01-18 12:20:56 +01:00
Joel Parker 2319999a05 Remove redundant semicolons for ANSI compatibility. 2007-01-17 11:58:15 +01:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard d2ad6f8355 ntdll: Get registers on the client side for NtGetContextThread on the current thread. 2006-04-20 15:40:28 +02:00
Robert Millan 62af0706ff ntdll: Rename i386 CPU trap codes to avoid collision with system headers. 2006-02-03 12:30:55 +01:00
Alexandre Julliard 2654be08d5 ntdll: Handle NtSetContextThread on the client side (as far as
possible) when setting the context of the current thread.
2006-01-11 20:20:32 +01:00
Alexandre Julliard 73c72390f8 Fixed Get/SetThreadContext to work properly on suspended threads.
Added a test case.
2005-11-02 20:54:12 +00:00
Alexandre Julliard ebf7a5d408 Preliminary implementation of signal handling for x86-64. 2005-09-16 19:40:52 +00:00