[Lldb-commits] [Patch for Review] Vector registers and expression IR

Thirumurthi, Ashok ashok.thirumurthi at intel.com
Mon Oct 29 19:43:56 PDT 2012


The attached patch adds eValueTypeVector to lldb_private::Value.  The nested struct Vector is patterned after RegisterValue::m_data.buffer.  This change to Value allows ClangExpressionDeclMap::LookupDecl to return vector register data for consumption by InterpreterStackFrame::ResolveValue.  Note that ResolveValue was tweaked slightly to allocate enough memory for vector registers.

An immediate result of this patch is that "expr $xmm0" generates the same results on Linux as on the Mac, which is good enough for TestRegisters.py.  In addition, the log of m_memory.PrintData(data_region.m_base, data_region.m_extent) shows that the register content has been resolved successfully.  On the other hand, the output is glaringly empty:
    runCmd: expr $xmm0
    output: (unsigned char __attribute__((ext_vector_type(16)))) $0 = {}
    Expecting sub string: vector_type
    Matched

Cheers,


-        Ashok
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20121030/fe027507/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vector-value.diff
Type: application/octet-stream
Size: 9334 bytes
Desc: vector-value.diff
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20121030/fe027507/attachment.obj>


More information about the lldb-commits mailing list