[llvm] r350275 - MSVC Visualizer for PointerUnion3
Mike Spertus via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 2 15:47:00 PST 2019
Author: mps
Date: Wed Jan 2 15:46:59 2019
New Revision: 350275
URL: http://llvm.org/viewvc/llvm-project?rev=350275&view=rev
Log:
MSVC Visualizer for PointerUnion3
Modified:
llvm/trunk/utils/LLVMVisualizers/llvm.natvis
Modified: llvm/trunk/utils/LLVMVisualizers/llvm.natvis
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/LLVMVisualizers/llvm.natvis?rev=350275&r1=350274&r2=350275&view=diff
==============================================================================
--- llvm/trunk/utils/LLVMVisualizers/llvm.natvis (original)
+++ llvm/trunk/utils/LLVMVisualizers/llvm.natvis Wed Jan 2 15:46:59 2019
@@ -105,13 +105,12 @@ For later versions of Visual Studio, no
</Type>
<Type Name="llvm::PointerUnion3<*,*,*>">
- <DisplayString Condition="(Val.Val.Value & 2) != 2 && (Val.Val.Value & 1) != 1">{"$T1", s8b}: {($T1)((Val.Val.Value >> 2) << 2)}</DisplayString>
- <DisplayString Condition="(Val.Val.Value & 2) == 2">{"$T2", s8b}: {($T2)((Val.Val.Value >> 2) << 2)}</DisplayString>
- <DisplayString Condition="(Val.Val.Value & 1) == 1">{"$T3", s8b}: {($T3)((Val.Val.Value >> 2) << 2)}</DisplayString>
+ <DisplayString Condition="(Val.Val.Value >> ValTy::ValTy::InfoTy::IntShift) & ValTy::ValTy::InfoTy::IntMask">{"$T3", s8b}: {($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)}</DisplayString>
+ <DisplayString>{*(InnerUnion*)&Val.Val.Value}</DisplayString>
<Expand>
- <ExpandedItem Condition="(Val.Val.Value & 2) != 2 && (Val.Val.Value & 1) != 1">($T1)((Val.Val.Value >> 2) << 2)</ExpandedItem>
- <ExpandedItem Condition="(Val.Val.Value & 2) == 2">($T2)((Val.Val.Value >> 2) << 2)</ExpandedItem>
- <ExpandedItem Condition="(Val.Val.Value & 1) == 1">($T3)((Val.Val.Value >> 2) << 2)</ExpandedItem>
+ <Item Name="[Holds]" Condition="(Val.Val.Value >> ValTy::ValTy::InfoTy::IntShift) & ValTy::ValTy::InfoTy::IntMask">"$T3", s8b</Item>
+ <Item Name="[Ptr]" Condition="(Val.Val.Value >> ValTy::ValTy::InfoTy::IntShift) & ValTy::ValTy::InfoTy::IntMask">($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)</Item>
+ <ExpandedItem Condition="!((Val.Val.Value >> ValTy::ValTy::InfoTy::IntShift) & ValTy::ValTy::InfoTy::IntMask)">*(InnerUnion*)&Val.Val.Value</ExpandedItem>
</Expand>
</Type>
More information about the llvm-commits
mailing list