RESOLVED FIXED 120969
no safeseh on win64
https://bugs.webkit.org/show_bug.cgi?id=120969
Summary no safeseh on win64
Alex Christensen
Reported 2013-09-07 15:03:24 PDT
r155226 added 32-bit assembly for something having to do with safe exception handlers, which should be disabled for win64.
Attachments
Patch (2.82 KB, patch)
2013-09-07 15:08 PDT, Alex Christensen
no flags
Patch (3.43 KB, patch)
2013-09-23 14:07 PDT, Alex Christensen
no flags
Alex Christensen
Comment 1 2013-09-07 15:08:01 PDT
Alex Christensen
Comment 2 2013-09-23 14:07:16 PDT
Brent Fulgham
Comment 3 2013-09-23 15:02:33 PDT
Comment on attachment 212388 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=212388&action=review I'm not sure this patch is really the right fix.I already filed https://bugs.webkit.org/show_bug.cgi?id=120906 to fix it properly, but haven't been able to work on it yet. I'm fine with landing this patch with the understanding that Bug 120906 will eventually deal with it. > Source/WebCore/WebCore.vcxproj/WebCore.vcxproj:7516 > + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> Are we sure these files are not usable in 64-bit mode? They turn off exception handling for he current stack (handing control of the handler to a hand-written ASM routine.) This routine allows us to crash immediately with a good stack trace,rather than blowing up later.
Alex Christensen
Comment 4 2013-09-23 15:08:37 PDT
> I'm fine with landing this patch with the understanding that Bug 120906 will eventually deal with it. "eventually". Let's land this to have a working 64-bit build until then. > > > Source/WebCore/WebCore.vcxproj/WebCore.vcxproj:7516 > > + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> > > Are we sure these files are not usable in 64-bit mode? They turn off exception handling for he current stack (handing control of the handler to a hand-written ASM routine.) This routine allows us to crash immediately with a good stack trace,rather than blowing up later. I'm not sure these files are not usable for the x64 architecture. I just know there is inline assembly for x86 architecture that is causing compiler problems, and that there is no /safeseh option for MSVC's x64 compiler.
Alex Christensen
Comment 5 2013-09-24 12:16:30 PDT
First of all, this appears to only be used by the AppleWin port in Source/WebCore/platform/graphics/ca/win/LayerChangesFlusher.cpp. Second, the x86 assembly in both of these files will need to be replaced by a dedicated x64 assembly file in Bug 120906, so these files will need to be disabled for the x64 build anyway, unless we want the win32 and win64 ports to share exceptionShouldTerminateProgram. We'd need to do a little refactoring later. In any case, I think this is very close to what we'll want in the long run, and it is a quick solution right now.
Brent Fulgham
Comment 6 2013-09-25 17:00:54 PDT
Comment on attachment 212388 [details] Patch r=me
WebKit Commit Bot
Comment 7 2013-09-25 17:40:33 PDT
Comment on attachment 212388 [details] Patch Clearing flags on attachment: 212388 Committed r156436: <http://trac.webkit.org/changeset/156436>
WebKit Commit Bot
Comment 8 2013-09-25 17:40:36 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.