int ICorDebugILFrame.GetIP(out uint pnOffset, out CorDebugMappingResult pMappingResult)
        {
            pnOffset       = IP;
            pMappingResult = CorDebugMappingResult.MAPPING_EXACT;

            return(COM_HResults.S_OK);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Gets the value of the instruction pointer and a bitwise combination
 /// value that describes how the value of the instruction pointer was
 /// obtained.
 /// </summary>
 /// <param name="nOffset">
 /// The value of the instruction pointer.
 /// </param>
 /// <param name="mappingResult">
 /// A pointer to a bitwise combination of the <c>CorDebugMappingResult</c>
 /// enumeration values that describe how the value of the instruction pointer
 /// was obtained.
 /// </param>
 /// <remarks>
 /// The value of the instruction pointer is the stack frame's offset
 /// into the function's Microsoft intermediate language (MSIL) code.
 /// If the stack frame is active, this address is the next instruction
 /// to execute. If the stack frame is not active, this address is the
 /// next instruction to execute when the stack frame is reactivated.
 ///
 /// If this frame is a just-in-time (JIT) compiled frame, the value of
 /// the instruction pointer will be determined by mapping backwards
 /// from the actual native instruction pointer, so the value may be
 /// only approximate.
 /// </remarks>
 public int GetIP(out uint nOffset, out CorDebugMappingResult mappingResult)
 {
     fixed(void *pnOffset = &nOffset)
     fixed(void *pMappingResult = &mappingResult)
     {
         return(Calli(_this, This[0]->GetIP, pnOffset, pMappingResult));
     }
 }
Ejemplo n.º 3
0
        public void GetIP(out uint offset, out CorDebugMappingResult mappingResult)
        {
            ICorDebugILFrame ilframe = GetILFrame();

            if (ilframe == null)
            {
                offset        = 0;
                mappingResult = CorDebugMappingResult.MAPPING_NO_INFO;
            }
            else
            {
                ilframe.GetIP(out offset, out mappingResult);
            }
        }
Ejemplo n.º 4
0
        public void GetIP(out int offset, out CorDebugMappingResult mappingResult)
        {
            ILFrame ilframe = GetILFrame();

            if (ilframe == null)
            {
                offset        = 0;
                mappingResult = CorDebugMappingResult.MappingNoInformation;
            }
            else
            {
                ilframe.GetIP(out offset, out mappingResult);
            }
        }
Ejemplo n.º 5
0
        public uint GetILOffset(out CorDebugMappingResult result)
        {
            result = CorDebugMappingResult.MAPPING_NO_INFO;

            if (IsIL)
            {
                uint offset;
                ComILFrame.GetIP(out offset, out result);

                return(offset);
            }

            throw new InvalidOperationException("Can only get IL offset from an IL frame.");
        }
Ejemplo n.º 6
0
 public CodeLocation(SerializedDnModuleWithAssembly moduleAssembly, uint token, uint offset, CorDebugMappingResult mapping)
 {
     this.ModuleAssembly = moduleAssembly;
     this.Token = token;
     this.Offset = offset;
     this.Mapping = mapping;
 }
Ejemplo n.º 7
0
 public void GetIP(out uint offset, out CorDebugMappingResult mappingResult)
 {
     ICorDebugILFrame ilframe = GetILFrame();
     if (ilframe == null)
     {
         offset = 0;
         mappingResult = CorDebugMappingResult.MAPPING_NO_INFO;
     }
     else
         ilframe.GetIP(out offset, out mappingResult);
 }
Ejemplo n.º 8
0
 public ILFrameIP(uint offset, CorDebugMappingResult mapping)
 {
     Offset  = offset;
     Mapping = mapping;
 }
Ejemplo n.º 9
0
		/// <summary>
		/// Constructor
		/// </summary>
		/// <param name="offset">Offset</param>
		/// <param name="mapping">Mapping flags</param>
		public ILFrameIP(uint offset, CorDebugMappingResult mapping) {
			this.Offset = offset;
			this.Mapping = mapping;
		}
 public static void GetIP(this ICorDebugILFrame instance, out uint pnOffset, out CorDebugMappingResult pMappingResult)
 {
     instance.__GetIP(out pnOffset, out pMappingResult);
 }
Ejemplo n.º 11
0
 public IPResult(uint ip, CorDebugMappingResult result)
 {
     this.Offset = (int)ip;
     this.Flags  = result;
 }
Ejemplo n.º 12
0
			public CodeLocation(CorFunction func, uint offset, CorDebugMappingResult mapping) {
				Function = func;
				Offset = offset;
				Mapping = mapping;
			}
 /// <summary>
 /// Gets the IP.
 /// </summary>
 /// <param name="offset">The offset.</param>
 /// <param name="mappingResult">The mapping result.</param>
 public void GetIP(out UInt32 offset, out CorDebugMappingResult mappingResult)
 {
     ICorDebugILFrame ilframe = frame as ICorDebugILFrame;
     if (ilframe == null)
     {
         offset = 0;
         mappingResult = CorDebugMappingResult.MAPPING_NO_INFO;
     }
     else
     {
         ilframe.GetIP(out offset, out mappingResult);
     }
 }
Ejemplo n.º 14
0
        int ICorDebugILFrame.GetIP( out uint pnOffset, out CorDebugMappingResult pMappingResult )
        {
            pnOffset = IP;
            pMappingResult = CorDebugMappingResult.MAPPING_EXACT;

            return Utility.COM_HResults.S_OK;            
        }
Ejemplo n.º 15
0
 public IPResult(uint ip, CorDebugMappingResult result)
 {
     this.Offset = (int)ip;
     this.Flags = result;
 }
        public uint GetILOffset(out CorDebugMappingResult result)
        {
            result = CorDebugMappingResult.MAPPING_NO_INFO;

            if (IsIL)
            {
                uint offset;
                ComILFrame.GetIP(out offset, out result);

                return offset;
            }
            
            throw new InvalidOperationException("Can only get IL offset from an IL frame.");
        }