Commit b0555285 authored by Kevin Modzelewski's avatar Kevin Modzelewski

Make AGRP inlineable into jitted code

It'll break once we add frame introspection info to it, but
for now it just needed some massaging.
parent aa7baa83
...@@ -170,7 +170,7 @@ void initGlobalFuncs(GlobalState& g) { ...@@ -170,7 +170,7 @@ void initGlobalFuncs(GlobalState& g) {
g.funcs.malloc = addFunc((void*)malloc, g.i8_ptr, g.i64); g.funcs.malloc = addFunc((void*)malloc, g.i8_ptr, g.i64);
g.funcs.free = addFunc((void*)free, g.void_, g.i8_ptr); g.funcs.free = addFunc((void*)free, g.void_, g.i8_ptr);
g.funcs.allowGLReadPreemption = addFunc((void*)threading::allowGLReadPreemption, g.void_); g.funcs.allowGLReadPreemption = getFunc((void*)threading::allowGLReadPreemption, "allowGLReadPreemption");
GET(softspace); GET(softspace);
......
...@@ -89,7 +89,8 @@ void _allowGLReadPreemption(); ...@@ -89,7 +89,8 @@ void _allowGLReadPreemption();
// only be accessed by the thread that holds the gil: // only be accessed by the thread that holds the gil:
extern int gil_check_count; extern int gil_check_count;
extern std::atomic<int> threads_waiting_on_gil; extern std::atomic<int> threads_waiting_on_gil;
inline void allowGLReadPreemption() { extern "C" inline void allowGLReadPreemption() __attribute__((visibility("default")));
extern "C" inline void allowGLReadPreemption() {
#if ENABLE_SAMPLING_PROFILER #if ENABLE_SAMPLING_PROFILER
if (unlikely(sigprof_pending)) { if (unlikely(sigprof_pending)) {
// Output multiple stacktraces if we received multiple signals // Output multiple stacktraces if we received multiple signals
...@@ -167,7 +168,8 @@ inline void promoteGL() { ...@@ -167,7 +168,8 @@ inline void promoteGL() {
} }
inline void demoteGL() { inline void demoteGL() {
} }
inline void allowGLReadPreemption() { extern "C" inline void allowGLReadPreemption() __attribute__((visibility("default")));
extern "C" inline void allowGLReadPreemption() {
} }
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment