tberghammer created this revision.
tberghammer added reviewers: clayborg, granata.enrico.
tberghammer added a subscriber: lldb-commits.

Remove a broken hack from Scalar::ULongLong and fix a test

Change Test-rdar-12481949.py to expect GetValueAsUnsigned() to return
0xffffffff if the variable is an int32_t (signed, 4 byte integer) with
value of -1. The previous expectation where we expected the value to be
0xffffffffffffffff doesn't make sense as nothing explains why we would
treat it as an 8 byte value.

This CL also removes a hack from Scalar::ULongLong what was most likely
added to get this test passing as it only worked in case the value of
the variable is -1 and didn't make any sense even in that case.

http://reviews.llvm.org/D14611

Files:
  packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
  source/Core/Scalar.cpp

Index: source/Core/Scalar.cpp
===================================================================
--- source/Core/Scalar.cpp
+++ source/Core/Scalar.cpp
@@ -1574,8 +1574,6 @@
     case e_ulonglong:
     case e_sint128:
     case e_uint128:
-        if(m_integer.isAllOnesValue())
-            return *(const ulonglong_t 
*)(llvm::APInt::getAllOnesValue(128)).getRawData();
         return *(const ulonglong_t *)m_integer.getRawData();
     case e_float:
         return (ulonglong_t)m_float.convertToFloat();
Index: 
packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
===================================================================
--- 
packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
+++ 
packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
@@ -50,5 +50,5 @@
         self.assertTrue(self.frame().FindVariable("myvar").GetValueAsSigned() 
!= 0xFFFFFFFFFFFFFFFF, "GetValueAsSigned() does not say 0xFFFFFFFFFFFFFFFF")
 
         
self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() != -1, 
"GetValueAsUnsigned() does not say -1")
-        
self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() == 
0xFFFFFFFFFFFFFFFF, "GetValueAsUnsigned() says 0xFFFFFFFFFFFFFFFF")
-        self.assertTrue(self.frame().FindVariable("myvar").GetValueAsSigned() 
!= 0xFFFFFFFF, "GetValueAsUnsigned() does not say 0xFFFFFFFF")
+        
self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() == 
0xFFFFFFFF, "GetValueAsUnsigned() says 0xFFFFFFFF")
+        
self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() != 
0xFFFFFFFFFFFFFFFF, "GetValueAsUnsigned() does not says 0xFFFFFFFFFFFFFFFF")


Index: source/Core/Scalar.cpp
===================================================================
--- source/Core/Scalar.cpp
+++ source/Core/Scalar.cpp
@@ -1574,8 +1574,6 @@
     case e_ulonglong:
     case e_sint128:
     case e_uint128:
-        if(m_integer.isAllOnesValue())
-            return *(const ulonglong_t *)(llvm::APInt::getAllOnesValue(128)).getRawData();
         return *(const ulonglong_t *)m_integer.getRawData();
     case e_float:
         return (ulonglong_t)m_float.convertToFloat();
Index: packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
===================================================================
--- packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
+++ packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py
@@ -50,5 +50,5 @@
         self.assertTrue(self.frame().FindVariable("myvar").GetValueAsSigned() != 0xFFFFFFFFFFFFFFFF, "GetValueAsSigned() does not say 0xFFFFFFFFFFFFFFFF")
 
         self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() != -1, "GetValueAsUnsigned() does not say -1")
-        self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() == 0xFFFFFFFFFFFFFFFF, "GetValueAsUnsigned() says 0xFFFFFFFFFFFFFFFF")
-        self.assertTrue(self.frame().FindVariable("myvar").GetValueAsSigned() != 0xFFFFFFFF, "GetValueAsUnsigned() does not say 0xFFFFFFFF")
+        self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() == 0xFFFFFFFF, "GetValueAsUnsigned() says 0xFFFFFFFF")
+        self.assertTrue(self.frame().FindVariable("myvar").GetValueAsUnsigned() != 0xFFFFFFFFFFFFFFFF, "GetValueAsUnsigned() does not says 0xFFFFFFFFFFFFFFFF")
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to