UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VVMRegisterName.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#if WITH_VERSE_VM || defined(__INTELLISENSE__)
6
9
10namespace Verse
11{
12
13// Mapping from register index to name. VProcedures hold an array of such mappings.
14struct FRegisterName
15{
18 BytecodeAnalysis::FLiveRange LiveRange;
19
20 FRegisterName() = default;
21
23 : Index(InIndex)
24 , Name(InContext, InName)
25 {
26 }
27
28 friend bool operator<(const FRegisterName& Left, const FRegisterName& Right)
29 {
30 if (Left.Index < Right.Index)
31 {
32 return true;
33 }
34 if (Right.Index < Left.Index)
35 {
36 return false;
37 }
38 if (Left.LiveRange < Right.LiveRange)
39 {
40 return true;
41 }
42 if (Right.LiveRange < Left.LiveRange)
43 {
44 return false;
45 }
46 // Nondeterministic, so do last.
47 return Left.Name.Get() < Right.Name.Get();
48 }
49
50 template <typename TVisitor>
51 friend void Visit(TVisitor& Visitor, FRegisterName& Value)
52 {
53 Visitor.Visit(Value.Index, TEXT("Index"));
54 Visitor.Visit(Value.Name, TEXT("Name"));
55 Visitor.Visit(Value.LiveRange, TEXT("LiveRange"));
56 }
57};
58
59} // namespace Verse
60
61#endif
#define TEXT(x)
Definition Platform.h:1272
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
bool operator<(const FTextFormatString &LHS, const FTextFormatString &RHS)
Definition ITextFormatArgumentModifier.h:147
decltype(auto) Visit(Func &&Callable, Variants &&... Args)
Definition TVariant.h:271
@ Visitor
Definition XmppMultiUserChat.h:94
Definition Archive.h:36
U16 Index
Definition radfft.cpp:71