llvm.org GIT mirror llvm / 8a13966
Fix MSVC visualizer for PointerUnion4 Calculate which item is being held and then display it with the appropriate type. We also optimize the display of PointerUnion3 to take advantage of our knowing that the IntMask is always 1 in PointerUnion types git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350280 91177308-0d34-0410-b5e6-96231b3b80d8 Mike Spertus 8 months ago
1 changed file(s) with 41 addition(s) and 13 deletion(s). Raw diff Collapse all Expand all
104104
105105
106106
107 {"$T3", s8b}: {($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)}
107 {"$T3", s8b}: {($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)}
108108 {*(InnerUnion*)&Val.Val.Value}
109109
110 "$T3", s8b
111 ($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)
112 <ExpandedItem Condition="!((Val.Val.Value >> ValTy::ValTy::InfoTy::IntShift) & ValTy::ValTy::InfoTy::IntMask)">*(InnerUnion*)&Val.Val.ValueItem>
110 <Item Name="[Holds]" Condition="(Val.Val.Value >> ValTy::ValTy::InfoTy::IntShift) & 1">"$T3", s8bItem>
111 ($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)
112 *(InnerUnion*)&Val.Val.Value
113113
114114
115115
116116
117 {"$T1", s8b}: {($T1)((Val.Val.Value >> 2) << 2)}
118 {"$T2", s8b}: {($T2)((Val.Val.Value >> 2) << 2)}
119 {"$T3", s8b}: {($T3)((Val.Val.Value >> 2) << 2)}
120 {"$T4", s8b}: {($T4)((Val.Val.Value >> 2) << 2)}
121
122 ($T1)((Val.Val.Value >> 2) << 2)
123 ($T2)((Val.Val.Value >> 2) << 2)
124 ($T3)((Val.Val.Value >> 2) << 2)
125 ($T4)((Val.Val.Value >> 2) << 2)>
117 >
118 {"$T1", s8b}: {($T1)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)}
119
120
121 {"$T2", s8b}: {($T2)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)}
122
123
124 {"$T3", s8b}: {($T3)(Val.Val.Value & InnerUnion2::ValTy::InfoTy::PointerBitMask)}
125
126
127 {"$T4", s8b}: {($T4)(Val.Val.Value & InnerUnion2::ValTy::InfoTy::PointerBitMask)}
128
129
130
131 "$T1", s8b
132
133
134 ($T1)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
135
136
137 "$T2", s8b
138
139
140 ($T2)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
141
142
143 "$T3", s8b
144
145
146 ($T3)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
147
148
149 "$T4", s8b
150
151
152 ($T4)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
153
126154
127155
128156