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

Reply via email to