[Lldb-commits] [PATCH] Add new test for stress testing stack unwinding

Tamas Berghammer tberghammer at google.com
Wed Jun 17 15:08:28 PDT 2015


================
Comment at: test/functionalities/unwind/standard/TestStandardUnwind.py:44
@@ +43,3 @@
+                "__aeabi_ldivmod",       # Do a "push {sp}" what is not handled correctly
+                "__aeabi_uldivmod",      # Do a "push {sp}" what is not handled correctly
+            ]
----------------
labath wrote:
> As I understand it, the idea is to use this list as a sort of an XFAIL list. In that case, maybe we should add a link to the relevant bug, where applicable?
Done

================
Comment at: test/functionalities/unwind/standard/TestStandardUnwind.py:48
@@ +47,3 @@
+                "__sync_fetch_and_add_4", # Calls into a special SO where we can't set a breakpoint
+                "pthread_mutex_lock",     # Uses ldrex and strex what interfiers with the software single stepping
+                "pthread_mutex_unlock",   # Uses ldrex and strex what interfiers with the software single stepping
----------------
labath wrote:
> interferes
Done

================
Comment at: test/functionalities/unwind/standard/TestStandardUnwind.py:65
@@ +64,3 @@
+        index = 0
+        while process.GetState() == lldb.eStateStopped:
+            index += 1
----------------
ovyalov wrote:
> What if an inferior exits immediately after launch - for example, reporting 126, 127 exit code?   
> Do we need to have assert here to check that process indeed in stopped state?
Added check

================
Comment at: test/functionalities/unwind/standard/TestStandardUnwind.py:71
@@ +70,3 @@
+                if self.TraceOn():
+                    print "INDEX:", index, "THREAD:", i
+                    for f in thread.frames:
----------------
ovyalov wrote:
> print "INDEX: %d, THREAD %d" % (index, i) ?
Done

================
Comment at: test/functionalities/unwind/standard/TestStandardUnwind.py:106
@@ +105,3 @@
+            if f.endswith(".cpp"):
+                d = {'CXX_SOURCES': os.path.join(dirname, f)}
+            elif f.endswith(".c"):
----------------
ovyalov wrote:
> f should contain a full path - do we need this join here?
Fixed (I don't know why it worked before)

================
Comment at: test/functionalities/unwind/standard/TestStandardUnwind.py:116
@@ +115,3 @@
+                self.setTearDownCleanup(d)
+            except:
+                self.skipTest("Inferior not supported")
----------------
ovyalov wrote:
> Could you log exception if Trace is on?
Done

http://reviews.llvm.org/D10454

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the lldb-commits mailing list