labath marked 2 inline comments as done.
labath added a comment.

I should note that I did look into making an assembly file out of this, but 
that turned out to be more complicated than I expected and then David convinced 
me that it should be possible to write this in a way that prevents the 
optimizer from being too smart. Nevertheless, I am still interested in making 
assembly-based tests for this (and similar features) because it enables testing 
scenarios that we could not get (reliably or at all) a compiler to produce.



================
Comment at: 
lldb/test/API/functionalities/param_entry_vals/basic_entry_values_x86_64/main.cpp:21-22
+  ++global;
   //% self.filecheck("image lookup -va $pc", "main.cpp", 
"-check-prefix=FUNC1-DESC")
   // FUNC1-DESC: name = "sink", type = "int &", location = 
DW_OP_entry_value(DW_OP_reg5 RDI)
 }
----------------
If we remove this check, the test will be completely architecture- and 
abi-independent. I don't think this check is particularly useful (we use llvm 
to print the dwarf expression, and there are better ways to test the image 
lookup command). Maybe we could just keep it to ensure that we really are 
evaluating entry values, but change the check the just search for the 
DW_OP_entry_value keyword (and then run the test on all architectures)?


================
Comment at: 
lldb/test/API/functionalities/param_entry_vals/basic_entry_values_x86_64/main.cpp:61-62
-
-  //% self.filecheck("expr x", "main.cpp", "-check-prefix=FUNC2-EXPR-FAIL", 
expect_cmd_failure=True)
-  // FUNC2-EXPR-FAIL: couldn't get the value of variable x: variable not 
available
-
----------------
I'm not sure why this was previously expected to fail -- I don't see a reason 
why the compiler couldn't emit an entry value for `x` now, or before this 
patch. And in the new setup, the expression actually succeeds.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79491/new/

https://reviews.llvm.org/D79491



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to