Mercurial > hg > graal-jvmci-8
comparison src/os_cpu/windows_x86/vm/os_windows_x86.cpp @ 4993:897b7d18bebc
added RiCompiledMethod.execute and the required VM infrastructure
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Tue, 28 Feb 2012 18:00:35 +0100 |
parents | 828eafbd85cc |
children | 957c266d8bc5 |
comparison
equal
deleted
inserted
replaced
4992:f86ddbd42a7b | 4993:897b7d18bebc |
---|---|
74 #endif // AMD64 | 74 #endif // AMD64 |
75 | 75 |
76 extern LONG WINAPI topLevelExceptionFilter(_EXCEPTION_POINTERS* ); | 76 extern LONG WINAPI topLevelExceptionFilter(_EXCEPTION_POINTERS* ); |
77 | 77 |
78 // Install a win32 structured exception handler around thread. | 78 // Install a win32 structured exception handler around thread. |
79 void os::os_exception_wrapper(java_call_t f, JavaValue* value, methodHandle* method, JavaCallArguments* args, Thread* thread) { | 79 void os::os_exception_wrapper(java_call_t f, JavaValue* value, methodHandle* method, nmethod* nm, JavaCallArguments* args, Thread* thread) { |
80 __try { | 80 __try { |
81 | 81 |
82 #ifndef AMD64 | 82 #ifndef AMD64 |
83 // We store the current thread in this wrapperthread location | 83 // We store the current thread in this wrapperthread location |
84 // and determine how far away this address is from the structured | 84 // and determine how far away this address is from the structured |
114 "thread pointer offset from SEH changed"); | 114 "thread pointer offset from SEH changed"); |
115 } | 115 } |
116 #endif // ASSERT | 116 #endif // ASSERT |
117 #endif // !AMD64 | 117 #endif // !AMD64 |
118 | 118 |
119 f(value, method, args, thread); | 119 f(value, method, nm, args, thread); |
120 } __except(topLevelExceptionFilter((_EXCEPTION_POINTERS*)_exception_info())) { | 120 } __except(topLevelExceptionFilter((_EXCEPTION_POINTERS*)_exception_info())) { |
121 // Nothing to do. | 121 // Nothing to do. |
122 } | 122 } |
123 } | 123 } |
124 | 124 |