mirror of
https://github.com/dbalsom/x86_microcode.git
synced 2026-06-09 13:04:17 +03:00
414 lines
15 KiB
XML
414 lines
15 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
|
|
<!-- Non-Body objects -->
|
|
|
|
<Type Name="StringTemplate<*>">
|
|
<DisplayString>{ (_length <= 8 ? (const unsigned char*)(this) : _start),[_length] }</DisplayString>
|
|
<Expand>
|
|
<Synthetic Name="[type]" Condition="_length <= 8"><DisplayString>Small</DisplayString></Synthetic>
|
|
<Synthetic Name="[type]" Condition="_length > 8 && _array._body == 0"><DisplayString>External</DisplayString></Synthetic>
|
|
<Synthetic Name="[type]" Condition="_length > 8 && _array._body != 0"><DisplayString>Owning</DisplayString></Synthetic>
|
|
<Item Name="[length]">_length</Item>
|
|
<Item Name="[capacity]" Condition="_length <= 8">8</Item>
|
|
<Item Name="[capacity]" Condition="_length > 8 && _array._body != 0">((Array<unsigned char>::Body<Array<unsigned char>::AppendableBaseBody>*)(_array._body))->_allocated</Item>
|
|
<Item Name="[used]" Condition="_length <= 8">_length</Item>
|
|
<Item Name="[used]" Condition="_length > 8 && _array._body != 0">((Array<unsigned char>::Body<Array<unsigned char>::AppendableBaseBody>*)(_array._body))->_count</Item>
|
|
<Item Name="[data]">(_length <= 8 ? (const unsigned char*)(this) : _start),[_length]</Item>
|
|
<Item Name="[array]" Condition="_length > 8 && _array._body != 0">_array._body</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Span">
|
|
<DisplayString Condition="_startLine != -1">{_file,na}({_startLine,d},{_startColumn,d})-({_endLine,d},{_endColumn,d})</DisplayString>
|
|
<DisplayString Condition="_startLine == -1">(no span)</DisplayString>
|
|
</Type>
|
|
<Type Name="ConstHandle">
|
|
<DisplayString>{ _body,na }</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_body</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="HashTableEntry<*>">
|
|
<DisplayString>{_key} => {_value}</DisplayString>
|
|
</Type>
|
|
<Type Name="RationalTemplate<int>">
|
|
<DisplayString Condition="denominator != 1">{numerator,d}/{denominator,d}</DisplayString>
|
|
<DisplayString Condition="denominator == 1">{numerator,d}</DisplayString>
|
|
</Type>
|
|
<Type Name="ConfigFileT<*>">
|
|
<DisplayString>ConfigFile {_file} {_values._body,view(count)} values {_types._body,view(count)} types</DisplayString>
|
|
<Expand>
|
|
<Item Name="[file]">_file</Item>
|
|
<Item Name="[values]">_values</Item>
|
|
<Item Name="[types]">_types</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="ValueT<*>">
|
|
<DisplayString>{_type} {_any} {_span}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[type]">_type</Item>
|
|
<Item Name="[any]">_any</Item>
|
|
<Item Name="[span]">_span</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="LValueT<*>">
|
|
<DisplayString>{_structure} . {_identifier}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[structure]">_structure</Item>
|
|
<Item Name="[identifier]">_identifier</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="StructuredTypeT<*>::Member">
|
|
<DisplayString>name {_name,na} default {_default}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[name]">_name</Item>
|
|
<Item Name="[default]">_default</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="StructureT<*>" Inheritable="false">
|
|
<DisplayString>Structure {_values._body,view(count)}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_values</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Bitmap<*>">
|
|
<DisplayString>Bitmap {_size} {_stride}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_body</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
|
|
|
|
<!-- ALFE bodies -->
|
|
|
|
<Type Name="ConstHandle::Body" Inheritable="false">
|
|
<DisplayString>ConstHandle refcount={_count,d}</DisplayString>
|
|
</Type>
|
|
<Type Name="Handle::Body" Inheritable="false">
|
|
<DisplayString>Handle refcount={_count,d}</DisplayString>
|
|
</Type>
|
|
<Type Name="ParseTreeObject::Body" Inheritable="false">
|
|
<DisplayString>span={_span}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[span]">_span</Item>
|
|
<Item Name="[ConstHandle]">(ConstHandle::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="FileSystemObjectT<*>::NamedBody">
|
|
<DisplayString>{_parent,na}\{_name,sb}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[parent]">_parent</Item>
|
|
<Item Name="[name]">_name</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="DriveRootDirectoryT<*>::Body">
|
|
<DisplayString>{_drive,d}:</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorEqualTo>::Body">
|
|
<DisplayString>==</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorAssignment>::Body">
|
|
<DisplayString>=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorAddAssignment>::Body">
|
|
<DisplayString>+=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorSubtractAssignment>::Body">
|
|
<DisplayString>-=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorMultiplyAssignment>::Body">
|
|
<DisplayString>*=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorDivideAssignment>::Body">
|
|
<DisplayString>/=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorModuloAssignment>::Body">
|
|
<DisplayString>%=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorShiftLeftAssignment>::Body">
|
|
<DisplayString><<=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorShiftRightAssignment>::Body">
|
|
<DisplayString>>>=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorBitwiseAndAssignment>::Body">
|
|
<DisplayString>&=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorBitwiseOrAssignment>::Body">
|
|
<DisplayString>|=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorBitwiseXorAssignment>::Body">
|
|
<DisplayString>~=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorBitwisePowerAssignment>::Body">
|
|
<DisplayString>^=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<TypeT<*>,FuncoType>::Body">
|
|
<DisplayString>Funco</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorAmpersand>::Body">
|
|
<DisplayString>&</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorBitwiseOr>::Body">
|
|
<DisplayString>|</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorTwiddle>::Body">
|
|
<DisplayString>~</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorNot>::Body">
|
|
<DisplayString>!</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorNotEqualTo>::Body">
|
|
<DisplayString>!=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorLessThan>::Body">
|
|
<DisplayString><</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorGreaterThan>::Body">
|
|
<DisplayString>></DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorLessThanOrEqualTo>::Body">
|
|
<DisplayString><=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorGreaterThanOrEqualTo>::Body">
|
|
<DisplayString>>=</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorShiftLeft>::Body">
|
|
<DisplayString><<</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorShiftRight>::Body">
|
|
<DisplayString>>></DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorPlus>::Body">
|
|
<DisplayString>+</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorMinus>::Body">
|
|
<DisplayString>-</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorStar>::Body">
|
|
<DisplayString>*</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorDivide>::Body">
|
|
<DisplayString>/</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorModulo>::Body">
|
|
<DisplayString>%</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorBitwisePower>::Body">
|
|
<DisplayString>^</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorFunctionCall>::Body">
|
|
<DisplayString>()</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorIndex>::Body">
|
|
<DisplayString>[]</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorIncrement>::Body">
|
|
<DisplayString>++</DisplayString>
|
|
</Type>
|
|
<Type Name="NamedNullary<Operator,OperatorDecrement>::Body">
|
|
<DisplayString>--</DisplayString>
|
|
</Type>
|
|
<Type Name="Any::Body<*>">
|
|
<DisplayString>{_t}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_t</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Any::Body<int>">
|
|
<DisplayString>int {_t}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_t</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Any::Body<unsigned short>">
|
|
<DisplayString>Word {_t}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_t</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Any::Body<StringTemplate<*>>">
|
|
<DisplayString>String {_t}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_t</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<*>::Body<Array<*>::AppendableBaseBody>" ExcludeView="count">
|
|
<DisplayString>Array {_size,d} {((int)this) + 16,x}</DisplayString>
|
|
<Expand>
|
|
<ArrayItems>
|
|
<Size>_size</Size>
|
|
<ValuePointer>($T1*)(((char*)this) + 16)</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<*>::Body<*>" IncludeView="count">
|
|
<DisplayString>{_size,d}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[size]">_size,d</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<*>::Body<*>" ExcludeView="count">
|
|
<DisplayString>Array {_size,d} {((int)this) + 12,x}</DisplayString>
|
|
<Expand>
|
|
<ArrayItems>
|
|
<Size>_size</Size>
|
|
<ValuePointer>($T1*)(((char*)this) + 12)</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<double>::Body<*>" ExcludeView="count">
|
|
<DisplayString>Array {_size,d} {((int)this) + 16,x}</DisplayString>
|
|
<Expand>
|
|
<ArrayItems>
|
|
<Size>_size</Size>
|
|
<ValuePointer>(double*)(((char*)this) + 16)</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<*>::Body<HashTableBody<*>>" ExcludeView="count">
|
|
<DisplayString>size={_size,d} allocated={_allocated,d}</DisplayString>
|
|
<Expand>
|
|
<ArrayItems>
|
|
<Size>_allocated</Size>
|
|
<ValuePointer>($T1*)(((char*)this) + 16)</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<*>::Body<HashTableBody<*>>" ExcludeView="count">
|
|
<DisplayString>size={_size,d} allocated={_allocated,d}</DisplayString>
|
|
<Expand>
|
|
<CustomListItems MaxItemsPerView="5000">
|
|
<Variable Name="p" InitialValue="($T1*)(((char*)this) + 16)" />
|
|
<Size>_size</Size>
|
|
<Loop>
|
|
<If Condition="p->_key._body != 0">
|
|
<Item>p,na</Item>
|
|
</If>
|
|
<Exec>++p</Exec>
|
|
</Loop>
|
|
</CustomListItems>
|
|
<Item Name="[size]">_size,d</Item>
|
|
<Item Name="[allocated]">_allocated,d</Item>
|
|
<Item Name="[Handle]">(Handle::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="Array<*>::Body<HashTableBody<*>>" ExcludeView="count">
|
|
<DisplayString>size={_size,d} allocated={_allocated,d}</DisplayString>
|
|
<Expand>
|
|
<CustomListItems MaxItemsPerView="5000">
|
|
<Variable Name="p" InitialValue="($T1*)(((char*)this) + 16)" />
|
|
<Size>_size</Size>
|
|
<Loop>
|
|
<If Condition="p->_key._length != 0">
|
|
<Item>p,na</Item>
|
|
</If>
|
|
<Exec>++p</Exec>
|
|
</Loop>
|
|
</CustomListItems>
|
|
<Item Name="[size]">_size,d</Item>
|
|
<Item Name="[allocated]">_allocated,d</Item>
|
|
<Item Name="[Handle]">(Handle::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="FFTWArray<*>::Body">
|
|
<DisplayString>FFTWArray {_n,d}</DisplayString>
|
|
<Expand>
|
|
<ArrayItems>
|
|
<Size>_n</Size>
|
|
<ValuePointer>($T1*)_data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="List<*>::Body">
|
|
<DisplayString>{_count,d}</DisplayString>
|
|
<Expand>
|
|
<LinkedListItems>
|
|
<Size>_count</Size>
|
|
<HeadPointer>&_first</HeadPointer>
|
|
<NextPointer>_next</NextPointer>
|
|
<ValueNode>_value</ValueNode>
|
|
</LinkedListItems>
|
|
<Item Name="[Handle]">(Handle::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="List<*>::Iterator">
|
|
<DisplayString>{_node->_value}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_node->_value</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="LValueTypeT<*>::Body">
|
|
<DisplayString>LValue<{_inner}></DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_inner</ExpandedItem>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="IdentifierT<*>::NameBody">
|
|
<DisplayString>Identifier {_name} {_span}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[name]">_name</Item>
|
|
<Item Name="[ParseTreeObject]">(ParseTreeObject::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="IdentifierT<*>::OperatorBody">
|
|
<DisplayString>Identifier operator{_op} {_span}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[op]">_op</Item>
|
|
<Item Name="[span]">_span</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="StructuredTypeT<*>::Body">
|
|
<DisplayString>StructuredType {_name}, {_members._body,view(count)} members</DisplayString>
|
|
<Expand>
|
|
<Item Name="[names]">_names</Item>
|
|
<Item Name="[members]">_members</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="IntegerType::Body">
|
|
<DisplayString>Integer</DisplayString>
|
|
</Type>
|
|
<Type Name="DoubleType::Body">
|
|
<DisplayString>Double</DisplayString>
|
|
</Type>
|
|
<Type Name="BooleanType::Body">
|
|
<DisplayString>Boolean</DisplayString>
|
|
</Type>
|
|
<Type Name="RationalType::Body">
|
|
<DisplayString>Rational</DisplayString>
|
|
</Type>
|
|
<Type Name="WordType::Body">
|
|
<DisplayString>Word</DisplayString>
|
|
</Type>
|
|
<Type Name="ByteType::Body">
|
|
<DisplayString>Byte</DisplayString>
|
|
</Type>
|
|
<Type Name="StringType::Body">
|
|
<DisplayString>String</DisplayString>
|
|
</Type>
|
|
<Type Name="ArrayType::Body">
|
|
<DisplayString>{_contained}[{_indexer}]</DisplayString>
|
|
</Type>
|
|
<Type Name="LessThanType::Body">
|
|
<DisplayString>{_n,d}</DisplayString>
|
|
</Type>
|
|
<Type Name="Reference<*>::Body<*>">
|
|
<DisplayString>Reference {_c,na}</DisplayString>
|
|
<Expand>
|
|
<ExpandedItem>_c</ExpandedItem>
|
|
<Item Name="[Handle]">(Handle::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="ExpressionT<*>::DotBody">
|
|
<DisplayString>{_left} . {_right}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[left]">_left</Item>
|
|
<Item Name="[right]">_right</Item>
|
|
<Item Name="[ParseTreeObject]">(ParseTreeObject::Body*)this,nd</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="FunctionCallExpressionT<*>::FunctionCallBody">
|
|
<DisplayString>{_function}({_arguments})</DisplayString>
|
|
</Type>
|
|
</AutoVisualizer>
|