[Lldb-commits] [lldb] r212225 - lldb - problem with some PTRACE_* constants in NativeProcessLinux.cpp file

Paul Osmialowski pawelo at king.net.pl
Wed Jul 2 20:31:57 PDT 2014



On Wed, 2 Jul 2014, Todd Fiala wrote:

> Whoops no his name is not "Paul Paul".  Sorry...  Cut and paste the full last name spelling after writing Paul...
> Should be:
> Change by Paul Osmialowski
>

No worries, the essence of the commit message is fine. As for me, I hope 
my next AArch64-related commits will cover more serious matter.

> 
> On Wed, Jul 2, 2014 at 2:34 PM, Todd Fiala <todd.fiala at gmail.com> wrote:
>       Author: tfiala
>       Date: Wed Jul  2 16:34:04 2014
>       New Revision: 212225
>
>       URL: http://llvm.org/viewvc/llvm-project?rev=212225&view=rev
>       Log:
>       lldb - problem with some PTRACE_* constants in NativeProcessLinux.cpp file
>
>       See http://reviews.llvm.org/D4366 for details.
>
>       Change by Paul Paul Osmialowski
>
>       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).
>
>       Modified:
>           lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp
>
>       Modified: lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp
>       URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp?rev=212225&r1=212224&r2=212225&view=diff
>       ==============================================================================
>       --- lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp (original)
>       +++ lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp Wed Jul  2 16:34:04 2014
>       @@ -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
> 
>
>       _______________________________________________
>       lldb-commits mailing list
>       lldb-commits at cs.uiuc.edu
>       http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
> 
> 
> 
> 
> --
> Todd Fiala |
>  Software Engineer |
>  tfiala at google.com |
>  650-943-3180
> 
>


More information about the lldb-commits mailing list