public static void Get_RuntimeMethod(this InstructionWriter instructionWriter, IMethod method, WeavingHelper weavingHelper)
 {
     var module = method.Module;
     if (!method.IsGenericDefinition && !method.DeclaringType.IsGenericDefinition)
     {
         instructionWriter.EmitInstructionMethod(OpCodeNumber.Ldtoken, method);
         instructionWriter.EmitInstructionMethod(OpCodeNumber.Call, module.Cache.GetItem(module.Cache.MethodBaseGetMethodFromHandle));
     }
     else
     {
         instructionWriter.EmitInstructionMethod(OpCodeNumber.Ldtoken, method.EnsureTypeQualifiedMethod(module));
         instructionWriter.EmitInstructionType(OpCodeNumber.Ldtoken, method.DeclaringType.GetTypeDefinition().GetCanonicalGenericInstance());
         instructionWriter.EmitInstructionMethod(OpCodeNumber.Call, module.Cache.GetItem(module.Cache.MethodBaseGetMethodFromHandle2));
     }
 }