diff options
| author | Enrico Granata <egranata@apple.com> | 2012-10-24 20:24:39 +0000 |
|---|---|---|
| committer | Enrico Granata <egranata@apple.com> | 2012-10-24 20:24:39 +0000 |
| commit | 48ea80f9ff86cd7d6aa70cb1d03579c0c87b828b (patch) | |
| tree | 31999b05063ac8e2fce44a833f485e6a919c544c /lldb/source/Core | |
| parent | 6fd26424af4a012c851af4cc8da81bbc09ffd796 (diff) | |
| download | bcm5719-llvm-48ea80f9ff86cd7d6aa70cb1d03579c0c87b828b.tar.gz bcm5719-llvm-48ea80f9ff86cd7d6aa70cb1d03579c0c87b828b.zip | |
Reimplementing SBValue/ValueObject.GetValueAsUnsigned() in terms of appropriate calls in Scalar - Making sure Scalar does the right thing when casting signed values to unsigned ones.
llvm-svn: 166618
Diffstat (limited to 'lldb/source/Core')
| -rw-r--r-- | lldb/source/Core/Scalar.cpp | 18 | ||||
| -rw-r--r-- | lldb/source/Core/ValueObject.cpp | 4 |
2 files changed, 11 insertions, 11 deletions
diff --git a/lldb/source/Core/Scalar.cpp b/lldb/source/Core/Scalar.cpp index eaf0bc502b8..58f72ed9193 100644 --- a/lldb/source/Core/Scalar.cpp +++ b/lldb/source/Core/Scalar.cpp @@ -765,11 +765,11 @@ Scalar::UInt(unsigned int fail_value) const { default: case e_void: break; - case e_sint: return (unsigned int)m_data.sint; + case e_sint: case e_uint: return (unsigned int)m_data.uint; - case e_slong: return (unsigned int)m_data.slong; + case e_slong: case e_ulong: return (unsigned int)m_data.ulong; - case e_slonglong: return (unsigned int)m_data.slonglong; + case e_slonglong: case e_ulonglong: return (unsigned int)m_data.ulonglong; case e_float: return (unsigned int)m_data.flt; case e_double: return (unsigned int)m_data.dbl; @@ -808,11 +808,11 @@ Scalar::ULong(unsigned long fail_value) const { default: case e_void: break; - case e_sint: return (unsigned long)m_data.sint; + case e_sint: case e_uint: return (unsigned long)m_data.uint; - case e_slong: return (unsigned long)m_data.slong; + case e_slong: case e_ulong: return (unsigned long)m_data.ulong; - case e_slonglong: return (unsigned long)m_data.slonglong; + case e_slonglong: case e_ulonglong: return (unsigned long)m_data.ulonglong; case e_float: return (unsigned long)m_data.flt; case e_double: return (unsigned long)m_data.dbl; @@ -902,11 +902,11 @@ Scalar::ULongLong(unsigned long long fail_value) const { default: case e_void: break; - case e_sint: return (unsigned long long)m_data.sint; + case e_sint: case e_uint: return (unsigned long long)m_data.uint; - case e_slong: return (unsigned long long)m_data.slong; + case e_slong: case e_ulong: return (unsigned long long)m_data.ulong; - case e_slonglong: return (unsigned long long)m_data.slonglong; + case e_slonglong: case e_ulonglong: return (unsigned long long)m_data.ulonglong; case e_float: return (unsigned long long)m_data.flt; case e_double: return (unsigned long long)m_data.dbl; diff --git a/lldb/source/Core/ValueObject.cpp b/lldb/source/Core/ValueObject.cpp index 86b7e8981d4..f608f85f3cd 100644 --- a/lldb/source/Core/ValueObject.cpp +++ b/lldb/source/Core/ValueObject.cpp @@ -1294,7 +1294,7 @@ ValueObject::GetValueAsUnsigned (uint64_t fail_value, bool *success) { if (success) *success = true; - return scalar.GetRawBits64(fail_value); + return scalar.ULongLong(fail_value); } // fallthrough, otherwise... } @@ -1681,7 +1681,7 @@ ValueObject::SetValueFromCString (const char *value_str, Error& error) Process *process = exe_ctx.GetProcessPtr(); if (process) { - addr_t target_addr = m_value.GetScalar().GetRawBits64(LLDB_INVALID_ADDRESS); + addr_t target_addr = m_value.GetScalar().ULongLong(LLDB_INVALID_ADDRESS); size_t bytes_written = process->WriteScalarToMemory (target_addr, new_scalar, byte_size, |

