File tree 3 files changed +14
-3
lines changed
3 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,7 @@ Setting up development can be done using the following commands:
27
27
$ source vmprof3/bin/activate
28
28
$ python setup.py develop
29
29
30
+ You need to install python development packages. In case of e.g. Debian or Ubuntu the package you need is ` python3-dev ` and ` libunwind-dev ` .
30
31
Now it is time to write a test and implement your feature. If you want
31
32
your changes to affect vmprof.com, head over to
32
33
https://github.com/vmprof/vmprof-server and follow the setup instructions.
Original file line number Diff line number Diff line change 2
2
from distutils .command .build_py import build_py
3
3
import os , sys
4
4
import subprocess
5
+ import platform
5
6
6
7
IS_PYPY = '__pypy__' in sys .builtin_module_names
7
8
@@ -39,10 +40,15 @@ def run(self):
39
40
extra_compile_args = ['-Wno-unused' ]
40
41
extra_compile_args += ['-DVMPROF_LINUX=1' ]
41
42
extra_compile_args += ['-DVMPROF_UNIX=1' ]
42
- if sys .maxsize == 2 ** 63 - 1 :
43
- libraries .append ('unwind-x86_64' )
43
+ if platform .machine ().startswith ("arm" ):
44
+ libraries .append ('unwind-arm' )
45
+ elif platform .machine ().startswith ("x86" ):
46
+ if sys .maxsize == 2 ** 63 - 1 :
47
+ libraries .append ('unwind-x86_64' )
48
+ else :
49
+ libraries .append ('unwind-x86' )
44
50
else :
45
- libraries . append ( 'unwind-x86' )
51
+ raise NotImplementedError
46
52
extra_source_files += [
47
53
'src/vmprof_mt.c' ,
48
54
'src/vmprof_unix.c' ,
Original file line number Diff line number Diff line change @@ -36,6 +36,8 @@ PY_EVAL_RETURN_T * vmprof_eval(PY_STACK_FRAME_T *f, int throwflag)
36
36
register PY_STACK_FRAME_T * callee_saved asm("rbx" );
37
37
#elif defined(X86_32 )
38
38
register PY_STACK_FRAME_T * callee_saved asm("edi" );
39
+ #elif defined(__arm__ )
40
+ register PY_STACK_FRAME_T * callee_saved asm("r4" );
39
41
#else
40
42
# error "platform not supported"
41
43
#endif
@@ -45,6 +47,8 @@ PY_EVAL_RETURN_T * vmprof_eval(PY_STACK_FRAME_T *f, int throwflag)
45
47
"movq %1, %0\t\n"
46
48
#elif defined(X86_32 )
47
49
"mov %1, %0\t\n"
50
+ #elif defined(__arm__ )
51
+ "mov %1, %0\t\n"
48
52
#else
49
53
# error "platform not supported"
50
54
#endif
You can’t perform that action at this time.
0 commit comments