Author: fijal
Branch:
Changeset: r79104:23592a8bf7e2
Date: 2015-08-21 13:58 +0200
http://bitbucket.org/pypy/pypy/changeset/23592a8bf7e2/
Log: improve loading
diff --git a/rpython/rlib/rvmprof/src/vmprof_main.h
b/rpython/rlib/rvmprof/src/vmprof_main.h
--- a/rpython/rlib/rvmprof/src/vmprof_main.h
+++ b/rpython/rlib/rvmprof/src/vmprof_main.h
@@ -52,6 +52,14 @@
static int opened_profile(char *interp_name);
static void flush_codes(void);
+#ifdef __APPLE__
+#define UNWIND_NAME "/usr/lib/system/libunwind.dylib"
+#define UNW_PREFIX "unw"
+#else
+#define UNWIND_NAME "libunwind.so"
+#define UNW_PREFIX "_ULx86_64"
+#endif
+
RPY_EXTERN
char *vmprof_init(int fd, double interval, char *interp_name)
{
@@ -62,15 +70,15 @@
if (!unw_get_reg) {
void *libhandle;
- if (!(libhandle = dlopen("libunwind.so", RTLD_LAZY | RTLD_LOCAL)))
+ if (!(libhandle = dlopen(UNWIND_NAME, RTLD_LAZY | RTLD_LOCAL)))
goto error;
- if (!(unw_get_reg = dlsym(libhandle, "_ULx86_64_get_reg")))
+ if (!(unw_get_reg = dlsym(libhandle, UNW_PREFIX "_get_reg")))
goto error;
- if (!(unw_get_proc_info = dlsym(libhandle, "_ULx86_64_get_proc_info")))
+ if (!(unw_get_proc_info = dlsym(libhandle, UNW_PREFIX
"_get_proc_info")))
goto error;
- if (!(unw_init_local = dlsym(libhandle, "_ULx86_64_init_local")))
+ if (!(unw_init_local = dlsym(libhandle, UNW_PREFIX "_init_local")))
goto error;
- if (!(unw_step = dlsym(libhandle, "_ULx86_64_step")))
+ if (!(unw_step = dlsym(libhandle, UNW_PREFIX "_step")))
goto error;
}
if (prepare_concurrent_bufs() < 0)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit