This revision was automatically updated to reflect the committed changes.
Closed by commit rL255547: Correction in TestFrames.py test for arm targets in 
thumb mode (authored by omjavaid).

Changed prior to commit:
  http://reviews.llvm.org/D15061?vs=41359&id=42765#toc

Repository:
  rL LLVM

http://reviews.llvm.org/D15061

Files:
  lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py

Index: lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
===================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
+++ lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
@@ -80,9 +80,12 @@
                 gpr_reg_set = lldbutil.get_GPRs(frame)
                 pc_value = gpr_reg_set.GetChildMemberWithName("pc")
                 self.assertTrue (pc_value, "We should have a valid PC.")
-                pc_value_str = pc_value.GetValue()
-                self.assertTrue (pc_value_str, "We should have a valid PC 
string.")
-                self.assertTrue (int(pc_value_str, 0) == frame.GetPC(), "PC 
gotten as a value should equal frame's GetPC")
+                pc_value_int = int(pc_value.GetValue(), 0)
+                # Make sure on arm targets we dont mismatch PC value on the 
basis of thumb bit.
+                # Frame PC will not have thumb bit set in case of a thumb 
instruction as PC.
+                if self.getArchitecture() in ['arm']:
+                    pc_value_int &= ~1
+                self.assertTrue (pc_value_int == frame.GetPC(), "PC gotten as 
a value should equal frame's GetPC")
                 sp_value = gpr_reg_set.GetChildMemberWithName("sp")
                 self.assertTrue (sp_value, "We should have a valid Stack 
Pointer.")
                 self.assertTrue (int(sp_value.GetValue(), 0) == frame.GetSP(), 
"SP gotten as a value should equal frame's GetSP")


Index: lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
===================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
+++ lldb/trunk/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
@@ -80,9 +80,12 @@
                 gpr_reg_set = lldbutil.get_GPRs(frame)
                 pc_value = gpr_reg_set.GetChildMemberWithName("pc")
                 self.assertTrue (pc_value, "We should have a valid PC.")
-                pc_value_str = pc_value.GetValue()
-                self.assertTrue (pc_value_str, "We should have a valid PC string.")
-                self.assertTrue (int(pc_value_str, 0) == frame.GetPC(), "PC gotten as a value should equal frame's GetPC")
+                pc_value_int = int(pc_value.GetValue(), 0)
+                # Make sure on arm targets we dont mismatch PC value on the basis of thumb bit.
+                # Frame PC will not have thumb bit set in case of a thumb instruction as PC.
+                if self.getArchitecture() in ['arm']:
+                    pc_value_int &= ~1
+                self.assertTrue (pc_value_int == frame.GetPC(), "PC gotten as a value should equal frame's GetPC")
                 sp_value = gpr_reg_set.GetChildMemberWithName("sp")
                 self.assertTrue (sp_value, "We should have a valid Stack Pointer.")
                 self.assertTrue (int(sp_value.GetValue(), 0) == frame.GetSP(), "SP gotten as a value should equal frame's GetSP")
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to