-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathdebug.natvis
More file actions
70 lines (66 loc) · 2.89 KB
/
debug.natvis
File metadata and controls
70 lines (66 loc) · 2.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="Source_Range">
<DisplayString>{file->text.bytes + offsets.from,[offsets.to - offsets.from]}[{offsets.to - offsets.from}]</DisplayString>
</Type>
<Type Name="Value_View">
<Expand>
<Item Name="[source]">source_range</Item>
<Item Name="[length]">length</Item>
<ArrayItems>
<Size>length</Size>
<ValuePointer>values</ValuePointer>
</ArrayItems>
</Expand>
</Type>
<Type Name="Register_Bitset">
<Expand>
<CustomListItems MaxItemsPerView="64">
<Variable Name="i" InitialValue="0" />
<Variable Name="reg" InitialValue="0" />
<Size>32</Size>
<Loop>
<Exec>reg = 0</Exec>
<If Condition="(bits >> i) & 1">
<Exec>reg = i + 1</Exec>
</If>
<Item Condition="reg - 1 == Register_A">"A",sb</Item>
<Item Condition="reg - 1 == Register_B">"B",sb</Item>
<Item Condition="reg - 1 == Register_C">"C",sb</Item>
<Item Condition="reg - 1 == Register_D">"D",sb</Item>
<Item Condition="reg - 1 == Register_SI">"SI",sb</Item>
<Item Condition="reg - 1 == Register_DI">"DI",sb</Item>
<Item Condition="reg - 1 == Register_SP">"SP",sb</Item>
<Item Condition="reg - 1 == Register_BP">"BP",sb</Item>
<Item Condition="reg - 1 == Register_R8">"R8",sb</Item>
<Item Condition="reg - 1 == Register_R9">"R9",sb</Item>
<Item Condition="reg - 1 == Register_R10">"R10",sb</Item>
<Item Condition="reg - 1 == Register_R11">"R11",sb</Item>
<Item Condition="reg - 1 == Register_R12">"R12",sb</Item>
<Item Condition="reg - 1 == Register_R13">"R13",sb</Item>
<Item Condition="reg - 1 == Register_R14">"R14",sb</Item>
<Item Condition="reg - 1 == Register_R15">"R15",sb</Item>
<!-- @Volatile :RegisterEnumValues -->
<Item Condition="reg - 1 == 16">"XMM0",sb</Item>
<Item Condition="reg - 1 == 17">"XMM1",sb</Item>
<Item Condition="reg - 1 == 18">"XMM2",sb</Item>
<Item Condition="reg - 1 == 19">"XMM3",sb</Item>
<Item Condition="reg - 1 == 20">"XMM4",sb</Item>
<Item Condition="reg - 1 == 21">"XMM5",sb</Item>
<Item Condition="reg - 1 == 22">"XMM6",sb</Item>
<Item Condition="reg - 1 == 23">"XMM7",sb</Item>
<Item Condition="reg - 1 == 24">"XMM8",sb</Item>
<Item Condition="reg - 1 == 25">"XMM9",sb</Item>
<Item Condition="reg - 1 == 26">"XMM10",sb</Item>
<Item Condition="reg - 1 == 27">"XMM11",sb</Item>
<Item Condition="reg - 1 == 28">"XMM12",sb</Item>
<Item Condition="reg - 1 == 29">"XMM13",sb</Item>
<Item Condition="reg - 1 == 30">"XMM14",sb</Item>
<Item Condition="reg - 1 == 31">"XMM15",sb</Item>
<Item>"",sb</Item>
<Exec>i++</Exec>
</Loop>
</CustomListItems>
</Expand>
</Type>
</AutoVisualizer>