[Lldb-commits] [PATCH] lldb - problem with some PTRACE_* constants in NativeProcessLinux.cpp file
Greg Clayton
gclayton at apple.com
Wed Jul 2 14:09:19 PDT 2014
Looks ok to me if Todd Fiala gives the ok as well.
> On Jul 2, 2014, at 1:46 PM, Paul Osmialowski <pawelo at king.net.pl> wrote:
>
> Today this is the only problem that I'm facing trying to cross-compile lldb for AArch64 using Linaro's toolchain.
> - PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS, PTRACE_SETFPREGS are not defined for AArch64
> - These things can be defined different ways for other architectures, e.g. for x86_64 Linux, asm/ptrace-abi.h defines them as preprocessor constants while sys/ptrace.h defines them in enum along with corresponding PT_* preprocessor constants
> - NativeProcessLinux.cpp includes sys/ptrace.h
> - To avoid accidental redefinition of enums with preprocessor constants, I'm proposing this patch which first checks for PT_* preprocessor constants then checks for PTRACE_* constants then when it still can not find them, it defines preprocessor constants.
> - Similar approach was already used for PTRACE_GETREGSET and PTRACE_SETREGSET constants; in this case however it was easier, since enum values in sys/ptrace.h and preprocessor constants shared all exactly the same names (e.g. there's no additional PT_GETREGSET name defined).
>
> http://reviews.llvm.org/D4366
>
> Files:
> source/Plugins/Process/Linux/NativeProcessLinux.cpp
>
> Index: source/Plugins/Process/Linux/NativeProcessLinux.cpp
> ===================================================================
> --- source/Plugins/Process/Linux/NativeProcessLinux.cpp
> +++ source/Plugins/Process/Linux/NativeProcessLinux.cpp
> @@ -53,12 +53,26 @@
> #define DEBUG_PTRACE_MAXBYTES 20
>
> // Support ptrace extensions even when compiled without required kernel support
> +#ifndef PT_GETREGS
> #ifndef PTRACE_GETREGS
> -#define PTRACE_GETREGS 12
> + #define PTRACE_GETREGS 12
> #endif
> +#endif
> +#ifndef PT_SETREGS
> #ifndef PTRACE_SETREGS
> #define PTRACE_SETREGS 13
> #endif
> +#endif
> +#ifndef PT_GETFPREGS
> +#ifndef PTRACE_GETFPREGS
> + #define PTRACE_GETFPREGS 14
> +#endif
> +#endif
> +#ifndef PT_SETFPREGS
> +#ifndef PTRACE_SETFPREGS
> + #define PTRACE_SETFPREGS 15
> +#endif
> +#endif
> #ifndef PTRACE_GETREGSET
> #define PTRACE_GETREGSET 0x4204
> #endif
> <D4366.11033.patch>_______________________________________________
> lldb-commits mailing list
> lldb-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
More information about the lldb-commits
mailing list