summaryrefslogtreecommitdiff
path: root/src/debug/daccess
diff options
context:
space:
mode:
Diffstat (limited to 'src/debug/daccess')
-rw-r--r--src/debug/daccess/daccess.targets73
-rw-r--r--src/debug/daccess/dacdbiimplstackwalk.cpp16
-rw-r--r--src/debug/daccess/dacfn.cpp2
-rw-r--r--src/debug/daccess/datatargetadapter.cpp6
-rw-r--r--src/debug/daccess/dirs.proj19
-rw-r--r--src/debug/daccess/enummem.cpp4
6 files changed, 16 insertions, 104 deletions
diff --git a/src/debug/daccess/daccess.targets b/src/debug/daccess/daccess.targets
deleted file mode 100644
index 43da554f47..0000000000
--- a/src/debug/daccess/daccess.targets
+++ /dev/null
@@ -1,73 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="dogfood">
- <!--*****************************************************-->
- <!--This MSBuild project file was automatically generated-->
- <!--from the original SOURCES/DIRS file by the KBC tool.-->
- <!--*****************************************************-->
- <!--Import the settings-->
- <PropertyGroup>
- <!-- Work around problems with loading System.Private.CoreLib.dll, -->
- <!-- caused by inconsistent setting of UseLegacyCompiler and FeatureSpanOfT -->
- <!-- between System.Private.CoreLib.dll and the runtime. -->
- <UseLegacyCompiler>true</UseLegacyCompiler>
- </PropertyGroup>
- <Import Project="$(_NTDRIVE)$(_NTROOT)\ndp\clr\clr.props" />
- <Import Project="$(_NTDRIVE)$(_NTROOT)\ndp\clr\dac.props" />
- <Import Project="..\SetDebugTargetLocal.props" />
- <!--Leaf project Properties-->
- <PropertyGroup>
- <UseStl Condition="'$(BuildForCoreSystem)' != 'true'">true</UseStl>
- <DaccessSrcDirectory>$(ClrSrcDirectory)\debug\daccess</DaccessSrcDirectory>
- <UserIncludes>$(UserIncludes);
- $(DaccessSrcDirectory);
- $(ClrSrcDirectory)\vm;
- $(ClrSrcDirectory)\vm\$(TargetCpu);
- $(ClrSrcDirectory)\debug\inc;
- $(ClrSrcDirectory)\debug\inc\$(TargetCpu);
- $(ClrSrcDirectory)\debug\inc\dump;
- $(ClrSrcDirectory)\debug\ee;
- $(ClrSrcDirectory)\inc;
- $(ClrSrcDirectory)\inc\$(IntermediateOutputDirectory);
- $(VCToolsIncPath);
- $(ClrSrcDirectory)\gcdump;
- $(ClrSrcDirectory)\md\inc;
- $(ClrSrcDirectory)\gc;
- $(ClrSrcDirectory)\strongname\inc</UserIncludes>
- <CDefines>$(CDefines);UNICODE;_UNICODE;$(USER_SPECIFIC_C_DEFINES);FEATURE_NO_HOST</CDefines>
- <OutputName Condition="'$(OutputName)' == ''">dac_wks</OutputName>
- <OutputPath>$(ClrLibDest)</OutputPath>
- <TargetType>LIBRARY</TargetType>
- <PCHHeader>stdafx.h</PCHHeader>
- <EnableCxxPCHHeaders>true</EnableCxxPCHHeaders>
- <PCHCompile>$(DaccessSrcDirectory)\stdafx.cpp</PCHCompile>
- </PropertyGroup>
- <!--Leaf Project Items-->
- <ItemGroup>
- <ProjectReference Include="$(ClrSrcDirectory)inc\corguids.nativeproj" />
- </ItemGroup>
-
- <ItemGroup>
- <CppCompile Include="$(DaccessSrcDirectory)\dacdbiimpl.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\dacdbiimpllocks.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\dacdbiimplstackwalk.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\daccess.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\dacfn.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\enummem.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\fntableaccess.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\inspect.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\reimpl.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\request.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\request_svr.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\stack.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\task.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\nidump.cpp" />
- <CppCompile Include="$(DaccessSrcDirectory)\datatargetadapter.cpp" />
- </ItemGroup>
- <ItemGroup>
- <CppCompile Condition="'$(TargetArch)' == 'i386'" Include="$(DaccessSrcDirectory)\i386\primitives.cpp" />
- <CppCompile Condition="'$(TargetArch)' == 'amd64'" Include="$(DaccessSrcDirectory)\amd64\primitives.cpp" />
- <CppCompile Condition="'$(TargetArch)' == 'arm'" Include="$(DaccessSrcDirectory)\arm\primitives.cpp" />
- <CppCompile Condition="'$(TargetArch)' == 'arm64'" Include="$(DaccessSrcDirectory)\arm64\primitives.cpp" />
- </ItemGroup>
- <!--Import the targets-->
- <Import Project="$(_NTDRIVE)$(_NTROOT)\ndp\clr\clr.targets" />
-</Project>
diff --git a/src/debug/daccess/dacdbiimplstackwalk.cpp b/src/debug/daccess/dacdbiimplstackwalk.cpp
index d3a2a63bbc..29c9626db8 100644
--- a/src/debug/daccess/dacdbiimplstackwalk.cpp
+++ b/src/debug/daccess/dacdbiimplstackwalk.cpp
@@ -1156,14 +1156,14 @@ void DacDbiInterfaceImpl::UpdateContextFromRegDisp(REGDISPLAY * pRegDisp,
// Do a partial copy first.
pContext->ContextFlags = (CONTEXT_INTEGER | CONTEXT_CONTROL);
- pContext->Edi = *pRegDisp->pEdi;
- pContext->Esi = *pRegDisp->pEsi;
- pContext->Ebx = *pRegDisp->pEbx;
- pContext->Ebp = *pRegDisp->pEbp;
- pContext->Eax = *pRegDisp->pEax;
- pContext->Ecx = *pRegDisp->pEcx;
- pContext->Edx = *pRegDisp->pEdx;
- pContext->Esp = pRegDisp->Esp;
+ pContext->Edi = *pRegDisp->GetEdiLocation();
+ pContext->Esi = *pRegDisp->GetEsiLocation();
+ pContext->Ebx = *pRegDisp->GetEbxLocation();
+ pContext->Ebp = *pRegDisp->GetEbpLocation();
+ pContext->Eax = *pRegDisp->GetEaxLocation();
+ pContext->Ecx = *pRegDisp->GetEcxLocation();
+ pContext->Edx = *pRegDisp->GetEdxLocation();
+ pContext->Esp = pRegDisp->SP;
pContext->Eip = pRegDisp->ControlPC;
// If we still have the pointer to the leaf CONTEXT, and the leaf CONTEXT is the same as the CONTEXT for
diff --git a/src/debug/daccess/dacfn.cpp b/src/debug/daccess/dacfn.cpp
index d8bae7746f..33dfa10b54 100644
--- a/src/debug/daccess/dacfn.cpp
+++ b/src/debug/daccess/dacfn.cpp
@@ -219,7 +219,7 @@ DacWriteAll(TADDR addr, PVOID buffer, ULONG32 size, bool throwEx)
#ifdef FEATURE_PAL
HRESULT
-DacVirtualUnwind(DWORD threadId, PCONTEXT context, PT_KNONVOLATILE_CONTEXT_POINTERS contextPointers)
+DacVirtualUnwind(DWORD threadId, PT_CONTEXT context, PT_KNONVOLATILE_CONTEXT_POINTERS contextPointers)
{
if (!g_dacImpl)
{
diff --git a/src/debug/daccess/datatargetadapter.cpp b/src/debug/daccess/datatargetadapter.cpp
index f2a1cc652a..4d4031d724 100644
--- a/src/debug/daccess/datatargetadapter.cpp
+++ b/src/debug/daccess/datatargetadapter.cpp
@@ -127,8 +127,12 @@ DataTargetAdapter::GetPlatform(
platform = CORDB_PLATFORM_POSIX_ARM;
break;
- case IMAGE_FILE_MACHINE_IA64:
case IMAGE_FILE_MACHINE_ARM64:
+ ulExpectedPointerSize = 8;
+ platform = CORDB_PLATFORM_POSIX_ARM64;
+ break;
+
+ case IMAGE_FILE_MACHINE_IA64:
_ASSERTE_MSG(false, "Not supported platform.");
return E_NOTIMPL;
diff --git a/src/debug/daccess/dirs.proj b/src/debug/daccess/dirs.proj
deleted file mode 100644
index 795d462778..0000000000
--- a/src/debug/daccess/dirs.proj
+++ /dev/null
@@ -1,19 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <!--Import the settings-->
- <Import Project="$(_NTDRIVE)$(_NTROOT)\ndp\clr\clr.props" />
-
- <PropertyGroup>
- <BuildInPhase1>true</BuildInPhase1>
- <BuildInPhaseDefault>false</BuildInPhaseDefault>
- <BuildCoreBinaries>true</BuildCoreBinaries>
- <BuildSysBinaries>true</BuildSysBinaries>
- </PropertyGroup>
-
- <!--The following projects will build during PHASE 1-->
- <ItemGroup Condition="'$(BuildExePhase)' == '1'">
- <ProjectFile Include="HostLocal\daccess.nativeproj" />
- </ItemGroup>
-
- <!--Import the targets-->
- <Import Project="$(_NTDRIVE)$(_NTROOT)\tools\Microsoft.DevDiv.Traversal.targets" />
-</Project>
diff --git a/src/debug/daccess/enummem.cpp b/src/debug/daccess/enummem.cpp
index d66af05769..0f38aa582a 100644
--- a/src/debug/daccess/enummem.cpp
+++ b/src/debug/daccess/enummem.cpp
@@ -970,7 +970,7 @@ HRESULT ClrDataAccess::EnumMemWalkStackHelper(CLRDataEnumMemoryFlags flags,
// Pulls in sequence points and local variable info
DebugInfoManager::EnumMemoryRegionsForMethodDebugInfo(flags, pMethodDesc);
-#ifdef WIN64EXCEPTIONS
+#if defined(WIN64EXCEPTIONS) && defined(USE_GC_INFO_DECODER)
if (addr != NULL)
{
@@ -988,7 +988,7 @@ HRESULT ClrDataAccess::EnumMemWalkStackHelper(CLRDataEnumMemoryFlags flags,
DacEnumMemoryRegion(dac_cast<TADDR>(pGCInfo), gcDecoder.GetNumBytesRead(), true);
}
}
-#endif // WIN64EXCEPTIONS
+#endif // WIN64EXCEPTIONS && USE_GC_INFO_DECODER
}
pMethodDefinition.Clear();
}