mirror of
https://github.com/python/cpython.git
synced 2025-11-01 18:51:43 +00:00
gh-118518: Allow perf to work without frame pointers (#112254)
This commit is contained in:
parent
999f0c5122
commit
1b22d801b8
19 changed files with 892 additions and 39 deletions
|
|
@ -108,6 +108,7 @@ extern int _PyIsPerfTrampolineActive(void);
|
|||
extern PyStatus _PyPerfTrampoline_AfterFork_Child(void);
|
||||
#ifdef PY_HAVE_PERF_TRAMPOLINE
|
||||
extern _PyPerf_Callbacks _Py_perfmap_callbacks;
|
||||
extern _PyPerf_Callbacks _Py_perfmap_jit_callbacks;
|
||||
#endif
|
||||
|
||||
static inline PyObject*
|
||||
|
|
|
|||
|
|
@ -75,6 +75,7 @@ struct trampoline_api_st {
|
|||
unsigned int code_size, PyCodeObject* code);
|
||||
int (*free_state)(void* state);
|
||||
void *state;
|
||||
Py_ssize_t code_padding;
|
||||
};
|
||||
#endif
|
||||
|
||||
|
|
@ -83,6 +84,7 @@ struct _ceval_runtime_state {
|
|||
struct {
|
||||
#ifdef PY_HAVE_PERF_TRAMPOLINE
|
||||
perf_status_t status;
|
||||
int perf_trampoline_type;
|
||||
Py_ssize_t extra_code_index;
|
||||
struct code_arena_st *code_arena;
|
||||
struct trampoline_api_st trampoline_api;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue