2008-03-05 09:52:00 -05:00
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
//
|
|
|
|
// Microsoft Research Singularity - Singularity ABI
|
|
|
|
//
|
|
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
//
|
|
|
|
// File: StackService.csi
|
|
|
|
//
|
|
|
|
// Note:
|
|
|
|
//
|
|
|
|
|
2008-11-17 18:29:00 -05:00
|
|
|
using System;
|
2008-03-05 09:52:00 -05:00
|
|
|
using System.Runtime.CompilerServices;
|
|
|
|
|
|
|
|
namespace Microsoft.Singularity.V1.Services
|
|
|
|
{
|
|
|
|
public struct StackService
|
|
|
|
{
|
|
|
|
private readonly int id;
|
|
|
|
|
|
|
|
[NoHeapAllocation]
|
|
|
|
public static void GetUnlinkStackRange(out ulong unlinkBegin, out ulong unlinkLimit);
|
|
|
|
[NoHeapAllocation]
|
|
|
|
public static void WalkStack();
|
|
|
|
[NoHeapAllocation]
|
|
|
|
public static void GetUsageStatistics(out ulong gets, out ulong returns);
|
|
|
|
[NoHeapAllocation]
|
2008-11-17 18:29:00 -05:00
|
|
|
public static void StackOverflow();
|
2008-03-05 09:52:00 -05:00
|
|
|
|
|
|
|
[NoHeapAllocation]
|
2008-11-17 18:29:00 -05:00
|
|
|
public static unsafe UIntPtr AllocateStackSegment(UIntPtr growSize);
|
2008-03-05 09:52:00 -05:00
|
|
|
|
|
|
|
[NoHeapAllocation]
|
2008-11-17 18:29:00 -05:00
|
|
|
public static unsafe void FreeStackSegment();
|
2008-03-05 09:52:00 -05:00
|
|
|
}
|
|
|
|
}
|