123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?xml version="1.0" encoding="utf-8"?>
- <!-- asmjit visualizer for Visual Studio (natvis) -->
- <AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
- <Type Name="asmjit::String">
- <Intrinsic Name="isSmall" Expression="(_type < 0x1F)"/>
- <DisplayString Condition="isSmall()">{_small.data, s8}</DisplayString>
- <DisplayString Condition="!isSmall()">{_large.data, s8}</DisplayString>
- <Expand HideRawView="true">
- <Synthetic Name="_type">
- <DisplayString Condition="(_type < 0x1F)">Small</DisplayString>
- <DisplayString Condition="(_type == 0x1F)">Large</DisplayString>
- <DisplayString Condition="(_type > 0x1F)">External</DisplayString>
- </Synthetic>
- <Item Name="_size" Condition="isSmall()" ExcludeView="simple">(int)_small.type, d</Item>
- <Item Name="_size" Condition="!isSmall()" ExcludeView="simple">_large.size, d</Item>
- <Item Name="_capacity" Condition="isSmall()" ExcludeView="simple">asmjit::String::kSSOCapacity, d</Item>
- <Item Name="_capacity" Condition="!isSmall()" ExcludeView="simple">_large.capacity, d</Item>
- <Item Name="_data" Condition="isSmall()" ExcludeView="simple">_small.data, s8</Item>
- <Item Name="_data" Condition="!isSmall()" ExcludeView="simple">_large.data, s8</Item>
- </Expand>
- </Type>
- <Type Name="asmjit::ZoneVector<*>">
- <DisplayString>{{ [size={_size, d} capacity={_capacity, d}] }}</DisplayString>
- <Expand>
- <Item Name="_size" ExcludeView="simple">_size, d</Item>
- <Item Name="_capacity" ExcludeView="simple">_capacity, d</Item>
- <ArrayItems>
- <Size>_size</Size>
- <ValuePointer>(($T1*)_data)</ValuePointer>
- </ArrayItems>
- </Expand>
- </Type>
- <Type Name="asmjit::Operand_">
- <Intrinsic Name="opType" Expression="(unsigned int)(_any.signature & 0x7)"/>
- <DisplayString Condition="opType() == 0">[None]</DisplayString>
- <DisplayString Condition="opType() == 1">[Reg] {{ id={_reg.id, d} group={(_reg.signature >> 8) & 0xF, d} type={(_reg.signature >> 4) & 0x1F, d} size={(_reg.signature >> 24) & 0xFF, d} }}</DisplayString>
- <DisplayString Condition="opType() == 2">[Mem] {{ }}</DisplayString>
- <DisplayString Condition="opType() == 3">[Imm] {{ val={_imm.value.i64, d} hex={_imm.value.u64, X} f64={_imm.value.f64} }}</DisplayString>
- <DisplayString Condition="opType() == 4">[Label] {{ id={_label.id} }}</DisplayString>
- <DisplayString Condition="opType() > 4">[Unknown]</DisplayString>
- <Expand HideRawView="true">
- <ExpandedItem Condition="opType() == 0">_any</ExpandedItem>
- <ExpandedItem Condition="opType() == 1">_reg</ExpandedItem>
- <ExpandedItem Condition="opType() == 2">_mem</ExpandedItem>
- <ExpandedItem Condition="opType() == 3">_imm</ExpandedItem>
- <ExpandedItem Condition="opType() == 4">_label</ExpandedItem>
- <ExpandedItem Condition="opType() > 4">_any</ExpandedItem>
- </Expand>
- </Type>
- </AutoVisualizer>
|