On Dec 3, 2013, at 4:27 PM, Jean-Daniel Dupas <[email protected]> wrote:
> Hello, > > I have one question regarding the Native Protocol interface. > Actually if we want to write a "NativeProcess" plugin based on this new > protocol, we lack register information required to build a "generic" > RegisterContext. > > Do you think we should add the following methods to the existing protocols, > or have you an other suggestion about how to get the missing information ? > > NativeProcessProtocol: > - size_t GetRegisterCount (); > - const RegisterInfo *GetRegisterInfoAtIndex (size_t reg); > - size_t GetRegisterSetCount (); > - const RegisterSet *GetRegisterSet (size_t reg_set); > - uint32_t ConvertRegisterKindToRegisterNumber (uint32_t kind, uint32_t num) > - uint32_t NumSupportedHardwareBreakpoints (); > > NativeThreadProtocol: > - InvalidateAllRegisters () > - bool HardwareSingleStep (bool enable) > Yep! I am sure there will be more functions that were missed. > Le 2 déc. 2013 à 20:08, Greg Clayton <[email protected]> a écrit : > >> Gotcha. Yes, then on MacOSX, we would be using MachProcess, MachTask, and a >> bunch of other classes used in debugserver. We will want to remove any >> custom events that are used in debugserver and replace them with >> lldb_private::Event objects and use lldb_private::Listener and >> lldb_private::Broadcaster. >> >> It might be worth making a copy of MachProcess, MachTask and any other >> classes from debugserver as they get used in LLDB itself so we can pull out >> old code that is no longer needed as eventually we will cut over to using >> these classes in LLDB with all of the LLDB defines and structures as the >> code will be quite different than the other defines and structures that are >> currently in debugserver. >> >> Let me know if you need any help with any of that. >> >> Greg >> >> On Dec 2, 2013, at 10:59 AM, Jean-Daniel Dupas <[email protected]> wrote: >> >>> Actually, I'm developing on OS X, and I have a far greater knowledge of the >>> OS X internals than the linux one, so I'd rather work on a Mach process >>> (based on the existing debugserver) >>> >>> But anyway, I think there is a lot of work that is platform independent, as >>> the dependents parts are already in the existing Processes plugins. >>> >>> Once we got a first implementation, porting the OS specifics parts from the >>> existing code should be straightforward. >>> >>> >>> Le 2 déc. 2013 à 17:48, Greg Clayton <[email protected]> a écrit : >>> >>>> None to my currently knowledge. >>>> >>>> It would be great if you can implement a linux version (I am assuming you >>>> want linux support right?) of NativeProcessProtocol and >>>> NativeThreadProtocol. >>>> >>>> They should be backed by the following files: >>>> >>>> trunk/source/Plugins/Process/Linux/ProcessMonitor.cpp >>>> trunk/source/Plugins/Process/POSIX/*.* >>>> >>>> Then we can start to implement the remote debugging in >>>> GDBRemoteCommunicationClient. >>>> >>>> Let me know if you need any help. >>>> >>>> Greg >>>> >>>> On Nov 28, 2013, at 3:48 AM, Jean-Daniel Dupas <[email protected]> wrote: >>>> >>>>> Hello, >>>>> >>>>> I'm interested in working on the lldb-gdbserver tool. >>>>> >>>>> I'd like to know if there is already someone working on it ? It would not >>>>> be very effective to duplicate the efforts. >>>>> >>>>> Thanks >>>>> >>>>> >>>>> _______________________________________________ >>>>> lldb-dev mailing list >>>>> [email protected] >>>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev >>>> >>>> _______________________________________________ >>>> lldb-dev mailing list >>>> [email protected] >>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev >>> >> >> >> _______________________________________________ >> lldb-dev mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev > > -- Jean-Daniel > > > > _______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
