Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/UtcThreadStaticsNode.cs')
-rw-r--r--src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/UtcThreadStaticsNode.cs13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/UtcThreadStaticsNode.cs b/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/UtcThreadStaticsNode.cs
index 3aeadde41..9647ef562 100644
--- a/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/UtcThreadStaticsNode.cs
+++ b/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/UtcThreadStaticsNode.cs
@@ -7,7 +7,7 @@ using Internal.TypeSystem;
namespace ILCompiler.DependencyAnalysis
{
- public class UtcThreadStaticsNode : ObjectNode, ISymbolDefinitionNode
+ public class UtcThreadStaticsNode : ObjectNode, ISymbolDefinitionNode, ISymbolNodeWithDebugInfo, ISortableSymbolNode
{
private MetadataType _type;
@@ -26,6 +26,8 @@ namespace ILCompiler.DependencyAnalysis
public int Offset => 0;
public MetadataType Type => _type;
+ public IDebugInfo DebugInfo => NullTypeIndexDebugInfo.Instance;
+
public static string GetMangledName(TypeDesc type, NameMangler nameMangler)
{
return nameMangler.NodeMangler.ThreadStatics(type);
@@ -56,11 +58,16 @@ namespace ILCompiler.DependencyAnalysis
{
ObjectDataBuilder builder = new ObjectDataBuilder(factory, relocsOnly);
builder.RequireInitialPointerAlignment();
- builder.EmitZeros(_type.ThreadStaticFieldSize.AsInt);
+ builder.EmitZeros(_type.ThreadGcStaticFieldSize.AsInt);
builder.AddSymbol(this);
return builder.ToObjectData();
}
- protected internal override int ClassCode => -1421136129;
+ public sealed override int ClassCode => -1421136129;
+
+ public override int CompareToImpl(ISortableNode other, CompilerComparer comparer)
+ {
+ return comparer.Compare(_type, ((UtcThreadStaticsNode)other)._type);
+ }
}
}