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

Greg Clayton gclayton at apple.com
Tue Oct 30 11:19:16 PDT 2012


Looks good! Test suite ran without issues on MacOSX.

% svn commit
Sending        include/lldb/Core/Value.h
Sending        source/Core/ValueObject.cpp
Sending        source/Core/ValueObjectVariable.cpp
Sending        source/Expression/ClangExpressionDeclMap.cpp
Sending        source/Expression/IRInterpreter.cpp
Transmitting file data .....
Committed revision 167033.


On Oct 29, 2012, at 7:43 PM, "Thirumurthi, Ashok" <ashok.thirumurthi at intel.com> wrote:

> 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
> <vector-value.diff>_______________________________________________
> lldb-commits mailing list
> lldb-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits




More information about the lldb-commits mailing list