cmtice wrote:

> > > Is the plan to get the DIL data structures merged before the rest of the 
> > > patch series is up for review? I think it'd be great to see how the 
> > > infrastructure introduced here will be used
> > 
> > 
> > There are 3 major pieces to the DIL implementation (soon to be 4, once I've 
> > got the lexer written): The AST bit; the parser, which is a recursive 
> > descent parser using the .ebnf grammar; and the interpreter/evaluator. The 
> > parser performs parsing and type-checking on the input expression, building 
> > up the AST as it goes. Once the AST is built, it gets passed to the 
> > interpreter/evaluator, which evaluates the AST (performing more correctness 
> > checks along the way), returning an LLDB ValueObjectSP at the end. I have 
> > both 'stripped down' and 'full' versions of all of these pieces. The 
> > 'stripped down' pieces match the current 'frame variable' functionality, 
> > and the 'full' versions implement extensions to that functionality 
> > (allowing it to handle all the expressions that lldb-eval could handle).
> > The plan is to submit a series of PRs as follows: 1). the AST parts (this 
> > PR). 2). the not-yet-written lexer (with any necessary changes to the 
> > already submitted AST parts); 3). the parser; 4) the evaluator; 5); the 
> > 'glue', i.e. updates to things like StackFrame.cpp & 
> > CommandObjectFrame.cpp, to hook up the new DIL implementation (optionally), 
> > as well as the test cases. Currently, the stripped down parser is ~2700 
> > lines of code, and the stripped down evaluator is ~1000 lines of code.
> > As I mentioned in an earlier comment (on June 24), you can see the full 
> > (not stripped down) implementation at 
> > https://github.com/cmtice/llvm-project/tree/DIL-work-new/ , although I have 
> > not (yet) updated that with the updates that have gone into this PR.
> > Does that answer all of your questions? Or is there more you would like to 
> > know or see?
> 
> Thanks for the breakdown! I was just wondering whether the plan was to merge 
> this before the other PRs are up. I think it'd be preferable to merge them 
> once they all have been approved. Though if others are ok with the current 
> strategy I don't want to block this.

I was under the impression that the plan was to merge each PR as it was 
approved (I thought things might be less confusing that way). But I am 
certainly open to alternatives.  If the folks reviewing these DIL PR's would 
prefer to have all the PRs available for review at the same time, I can put 
most of the others out for review now as well.  Just let me know.



https://github.com/llvm/llvm-project/pull/95738
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to