I really would rather avoid the key/value thing. I prefer the --exception-name and --exception-code and have the platform handle it. Seems cleaner.
Greg > On Apr 4, 2016, at 11:41 AM, Jim Ingham <jing...@apple.com> wrote: > > Yes, that's why I prefer a more abstract command interface than trying to be > too specific about some abstract breakpoint. So you'd just have: > > Error > Platform::SetPlatformBreakpoint(lldb_private::Target *target, const char > *data); > > Then this can have any meaning that it needs to. The other way to structure > this is: > > break set -P -key "KEY" -value "VALUE" > > Jim > > > >> On Apr 4, 2016, at 11:36 AM, Carlo Kok <c...@remobjects.com> wrote: >> >> >> >> Op 2016-04-04 om 20:30 schreef Greg Clayton: >>> >>>> On Apr 4, 2016, at 11:24 AM, Zachary Turner <ztur...@google.com> wrote: >>>> >>>> It seems like we already have some precedent for conditional command >>>> arguments. For example: >>>> >>>> (lldb) help platform process list >>>> ... >>>> -u <unsigned-integer> ( --uid <unsigned-integer> ) >>>> [POSIX] Find processes that have a matching user ID. >>>> >>>> So on Windows this argument doesn't make sense. Could we make an argument >>>> that is conditional on the *target* rather than the host? Then, for >>>> example, you could have something like this: >>>> >>>> (lldb) help break set >>>> ... >>>> --code <hex-integer> ( --code <hex-integer> ) >>>> [Windows Target] Break when the exception with code <code> is >>>> raised. >>>> >>>> How to plumb this to the ProcessWindows plugin is an open question, but >>>> should be mostly mechanical. >>> >>> This is like my suggestion of: >>> >>> (lldb) breakpoint set --exception-code 0x40010005 >>> >>> The code can be passed to the current Platform along with the current >>> target: >>> >>> Error Platform::SetExceptionBreakpointWithExceptionCode >>> (lldb_private::Target *target, uint64_t exception_code); >>> >>> The process can be extracted from the target when the breakpoint needs to >>> be resolved. >>> >>> >> >> There should be a way then to do a "break on every exception", instead of >> just 1 specific code. >> >> and some way for the api to get the payload (which can have a variable >> number of parameters) >> >> -- >> Carlo Kok >> RemObjects Software > _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev