Table of Contents

Enum MethodImplAttributes

Namespace
AsmResolver.PE.DotNet.Metadata.Tables
Assembly
AsmResolver.PE.dll

Provides members defining all flags that dictate the implementation of a method body.

[Flags]
public enum MethodImplAttributes : ushort

Fields

AggressiveInlining = 256

Method should be inlined if possible.

AggressiveOptimization = 512

Method may contain hot code and should be aggressively optimized.

CodeTypeMask = Native | OPTIL

Provides a bitmask for obtaining the flags related to the code type of the method.

ForwardRef = 16

Indicates the method is defined; used primarily in merge scenarios.

IL = 0

Method implementation is IL.

InternalCall = 4096

Reserved for internal use.

Managed = 0

Method implementation is managed.

ManagedMask = 4

Provides a bitmask for obtaining the flags specifying whether the code is managed or unmanaged.

Native = 1

Method implementation is native.

NoInlining = 8

Method may not be inlined.

NoOptimization = 64

Method will not be optimized when generating native code.

OPTIL = 2

Method implementation is OPTIL.

PreserveSig = 128

Indicates the method signature is not to be mangled to do HRESULT conversion.

Runtime = Native | OPTIL

Method implementation is provided by the runtime.

SecurityMitigations = Native | AggressiveOptimization

Specifies that the JIT compiler should look for security mitigation attributes, such as the user-defined System.Runtime.CompilerServices.SecurityMitigationsAttribute. If found, the JIT compiler applies any related security mitigations. Available starting with .NET Framework 4.8.

Synchronized = 32

Method is single threaded through the body.

Unmanaged = 4

Method implementation is unmanaged.