summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/ClangExpressionDeclMap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Expression/ClangExpressionDeclMap.cpp')
-rw-r--r--lldb/source/Expression/ClangExpressionDeclMap.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/lldb/source/Expression/ClangExpressionDeclMap.cpp b/lldb/source/Expression/ClangExpressionDeclMap.cpp
index 940be042c3d..f8304b98b6b 100644
--- a/lldb/source/Expression/ClangExpressionDeclMap.cpp
+++ b/lldb/source/Expression/ClangExpressionDeclMap.cpp
@@ -1083,8 +1083,13 @@ ClangExpressionDeclMap::LookupDecl (clang::NamedDecl *decl, ClangExpressionVaria
Value ret;
ret.SetContext(Value::eContextTypeRegisterInfo, reg_info);
- if (!reg_value.GetScalarValue(ret.GetScalar()))
- return Value();
+ if (reg_info->encoding == eEncodingVector)
+ {
+ if (ret.SetVectorBytes((uint8_t *)reg_value.GetBytes(), reg_value.GetByteSize(), reg_value.GetByteOrder()))
+ ret.SetScalarFromVector();
+ }
+ else if (!reg_value.GetScalarValue(ret.GetScalar()))
+ return Value();
return ret;
}
OpenPOWER on IntegriCloud