<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;color:#000000">One important question: what do you mean talking about "block"? Does it mean that SBTarget::Launch blocks the process and the user can't continue working with this process until it stops?</div></div><br><div class="gmail_quote"><div dir="ltr">сб, 11 авг. 2018 г. в 2:41, Adrian Prantl <<a href="mailto:aprantl@apple.com">aprantl@apple.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I was wondering how this worked in the regular SBAPI that we use for all the "normal" python-based LLDB tests. The implementation of SBProcess::Continue() for example calls Process::Resume() or Process::ResumeSynchronous() depending on whether synchronous mode is set or not.<br>
It's not immediately obvious to me whether -exec-run should wait until the process stopped before returning or whether -exec-step should wait until the process stopped before executing.<br>
<br>
Based on a cursory reading of the sources it seems like SBTarget::Launch should block until the process stopped when it is in synchronous mode. Can you confirm this? If that is the case, can you figure out why -exec-run does not inherit this behavior?<br>
<br>
-- adrian<br>
<br>
> On Aug 10, 2018, at 4:27 PM, Александр Поляков <<a href="mailto:polyakov.alx@gmail.com" target="_blank">polyakov.alx@gmail.com</a>> wrote:<br>
> <br>
> AFAIK, there is no mechanism in lldb-mi to distinguish a command that expects a frame, so we need to modify each command manually. Am I right?<br>
> If so, I found the Process::WaitForProcessToStop method which we can add to SB API and use in lldb-mi.<br>
> <br>
> сб, 11 авг. 2018 г. в 0:50, Adrian Prantl <<a href="mailto:aprantl@apple.com" target="_blank">aprantl@apple.com</a>>:<br>
> [adding lldb-dev back to the conversation]<br>
> <br>
> > On Aug 10, 2018, at 2:37 PM, Adrian Prantl <<a href="mailto:aprantl@apple.com" target="_blank">aprantl@apple.com</a>> wrote:<br>
> > <br>
> > <br>
> > <br>
> >> On Aug 10, 2018, at 2:25 PM, Александр Поляков <<a href="mailto:polyakov.alx@gmail.com" target="_blank">polyakov.alx@gmail.com</a>> wrote:<br>
> >> <br>
> >> I didn't check this yet. lldb-mi already runs LIT test in the --synchronous mode and the tests keep failing.<br>
> >> <br>
> > <br>
> > Yes, that's why I said this:<br>
> > <br>
> > <br>
> >>> пт, 10 авг. 2018 г. в 23:57, Adrian Prantl <<a href="mailto:aprantl@apple.com" target="_blank">aprantl@apple.com</a>>:<br>
> >>> <br>
> >>> Before we continue to discuss -wait-for-breakpoint; where you actually able to verify my suspicion that that is what is happening on the bots? Fred suggested to me offline today that in synchronous mode, perhaps -exec-* should be waiting for the process to be stopped, which would also sound like a reasonable and less invasive solution to the problem.<br>
> >>> <br>
> >> <br>
> > <br>
> > Instead of adding a new command to wait for the process to be stopped we might be able to just wait for the process to be stopped if in synchronous mode and we are running any commands that expect a frame (such as -exec-*).<br>
> > <br>
> > -- adrian<br>
> <br>
> <br>
> <br>
> -- <br>
> Alexander<br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><span style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:12.8px">Alexander</span><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>