> On May 12, 2016, at 2:25 PM, Cameron <[email protected]> wrote: > > Sorry to break the build! Apparently 'make clean' isn't executing cleanly > during the build step of the test, but I haven't the faintest idea why. It > builds/runs fine locally for me (then again, I'm on Windows). The makefile is > dead simple, and is identical to that of some other tests. Has anyone seen > something like this before? > > Ah, I would have written a test using the APIs if I knew. I didn't see any > other similar tests that set up LLDB from scratch without going through the > command line. For reference, can you point me to one of these tests I can use > as an example for the next time?
expression_command/fixits/TestFixIts.py is one. It makes a target, runs it hits breakpoints and does some other stuff. Most of the Python API tests start by creating the target in Python - whereas the command-line tests tend to use the file command. So you can find lots of examples by searching for the string "self.dbg.CreateTarget" in all the .py files. Jim > > On Thu, May 12, 2016 at 5:17 PM, Jim Ingham <[email protected]> wrote: > Note that while adding a "expr --allow-jit" flag to control this was great, > there already was an SBExpressionOptions option and the appropriate flags > available for this, so it was testable. I was just checking because there > really shouldn't be anything we can do from a command that we can't do from > the SB API's, but in this case the thing was already in the expression > options. > > We do prefer not to write tests with the command line when you can do it with > the Python API's. In our experience, command line tests have tended to be > more fragile. It's not necessary to change the test, there are plenty of > other command line tests lying around. Just for future reference... > > Jim > > > On May 9, 2016, at 1:01 PM, Sean Callanan via lldb-commits > > <[email protected]> wrote: > > > > spyffe accepted this revision. > > spyffe added a comment. > > This revision is now accepted and ready to land. > > > > This patch is fine. I especially appreciate the time you took making the > > IRInterpreter properly testable. I will use this myself. > > > > > > ================ > > Comment at: source/Commands/CommandObjectExpression.cpp:67 > > @@ -67,1 +66,3 @@ > > + { LLDB_OPT_SET_1 | LLDB_OPT_SET_2, false, "top-level", 'p', > > OptionParser::eNoArgument , NULL, NULL, 0, eArgTypeNone, > > "Interpret the expression as top-level definitions rather than code to be > > immediately executed."}, > > + { LLDB_OPT_SET_1 | LLDB_OPT_SET_2, false, "allow-jit", 'j', > > OptionParser::eRequiredArgument, nullptr, nullptr, 0, eArgTypeBoolean, > > "Controls whether the expression can fall back to being JITted if it's not > > supported by the interpreter (defaults to true)."} > > }; > > ---------------- > > This is a great feature which I will use in test cases. > > > > ================ > > Comment at: source/Expression/IRInterpreter.cpp:1102 > > @@ -1058,1 +1101,3 @@ > > + } > > + break; > > case Instruction::GetElementPtr: > > ---------------- > > Looks all right to me. Thank you! > > > > > > http://reviews.llvm.org/D19124 > > > > > > > > _______________________________________________ > > lldb-commits mailing list > > [email protected] > > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits > > _______________________________________________ lldb-commits mailing list [email protected] http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
