Title | Configura cannot efficiently use SEH. |
Status | closed |
Priority | nice |
Assigned user | Richard Brooksby |
Organization | Ravenbrook |
Description | Configura need to be able to build their own win32 Structured Exception Handling frames using code emitted by their CM compiler. One of the reasons they want to do this is to enable exact stack-scanning and managing the transition from a foreign (non-CM) frame to a CM frame (eg a C/C++ library is calling a function ultimately implemented in CM). Their current attempts at doing this produce a pronounced slowdown in the running speed of the compiler which is believed to be due to the CM emitted SEH frames. |
Analysis | DRJ: In trying to replicate Configura's experiment of comparing MSVC built SEH frames against hand-assembled SEH frames I concluded that there was no difference in performance. See [3] for the source code. In order to do any more investigation we need to more thoroughly replicate Configura's setup, for example by using CM. GDR 2013-03-08: It looks as though this is no longer an issue, because the MPS no longer uses Structured Exception Handling on Windows. [4] |
How found | customer |
Evidence | [1] <https://info.ravenbrook.com/mail/2006/02/23/14-14-22/0/ > Original e-mail from configura[2] < http://www.microsoft.com/msj/0197/exception/exception.aspx > MSJ article about SEH[3] < https://info.ravenbrook.com/project/mps/import/2006-05-17/win32-seh/ > SEH experiment[4] < http://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?@describe+180961 > |
Created by | David Jones |
Created on | 2006-03-24 13:25:29 |
Last modified by | Richard Brooksby |
Last modified on | 2013-03-12 12:51:40 |
History | 2006-03-24 DRJ Created. 2006-05-17 DRJ Wrote up my analysis. 2013-03-08 GDR Assigned to RB but looks fixed to me. |
Change | Effect | Date | User | Description |
---|---|---|---|---|
180961 | closed | 2013-02-20 12:11:40 | Richard Brooksby | Deprecating the MPS trampoline by using Vectored Exception Handling on Windows. |