diff options
author | Benoit Perrin | 2013-01-04 05:51:39 -0500 |
---|---|---|
committer | Eugene Tarassov | 2013-01-08 12:05:42 -0500 |
commit | ea62ab78aa067894672488f8de96365b2000bea9 (patch) | |
tree | fa3d4ab5432f43cdabbed1874d7b07f0348dd5c1 | |
parent | e7a44ded1ffe81fad9b8d7f88c2641be138613ed (diff) | |
download | org.eclipse.tcf.agent-ea62ab78aa067894672488f8de96365b2000bea9.zip org.eclipse.tcf.agent-ea62ab78aa067894672488f8de96365b2000bea9.tar.gz org.eclipse.tcf.agent-ea62ab78aa067894672488f8de96365b2000bea9.tar.xz |
Bug 397434: Configure in or out the internal stackcrawling.
The TCF code comes with an internal minimal stack-crawling support for x86 architectures.
A new configuration preprocessor macro 'ENABLE_ExternalStackcrawl' is introduced to exclude the internal code in order an external stackcrawl code can be used.
-rw-r--r-- | agent/machine/x86_64/tcf/cpudefs-mdep.c | 4 | ||||
-rw-r--r-- | agent/tcf/config.h | 4 | ||||
-rw-r--r-- | server/tcf/config.h | 1 |
3 files changed, 9 insertions, 0 deletions
diff --git a/agent/machine/x86_64/tcf/cpudefs-mdep.c b/agent/machine/x86_64/tcf/cpudefs-mdep.c index 47c1dd0..052c694 100644 --- a/agent/machine/x86_64/tcf/cpudefs-mdep.c +++ b/agent/machine/x86_64/tcf/cpudefs-mdep.c @@ -432,6 +432,8 @@ int mdep_set_other_regs(pid_t pid, REG_SET * data, #endif +#if !ENABLE_ExternalStackcrawl + #ifndef _WRS_KERNEL #define JMPD08 0xeb #define JMPD32 0xe9 @@ -720,6 +722,8 @@ int crawl_stack_frame(StackFrame * frame, StackFrame * down) { return 0; } +#endif /* !ENABLE_ExternalStackcrawl */ + RegisterDefinition * get_PC_definition(Context * ctx) { static RegisterDefinition * reg_def = NULL; if (!context_has_state(ctx)) return NULL; diff --git a/agent/tcf/config.h b/agent/tcf/config.h index e1aef7d..ef6d8e1 100644 --- a/agent/tcf/config.h +++ b/agent/tcf/config.h @@ -262,4 +262,8 @@ # define ENABLE_ExtendedMemoryErrorReports 1 #endif +#if !defined(ENABLE_ExternalStackcrawl) +# define ENABLE_ExternalStackcrawl 0 +#endif + #endif /* D_config */ diff --git a/server/tcf/config.h b/server/tcf/config.h index 28110bf..1299eed 100644 --- a/server/tcf/config.h +++ b/server/tcf/config.h @@ -135,5 +135,6 @@ #define ENABLE_ExtendedMemoryErrorReports 0 #define ENABLE_ContextBreakpointCapabilities 0 #define ENABLE_ExtendedBreakpointStatus 0 +#define ENABLE_ExternalStackcrawl 0 #endif /* D_config */ |