diff options
27 files changed, 171 insertions, 282 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ef0220d9a7..ba328f48be 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -154,6 +154,27 @@ else() if (AWK STREQUAL "AWK-NOTFOUND") message(FATAL_ERROR "AWK not found") endif() + + if (CMAKE_SYSTEM_NAME STREQUAL Darwin) + + # Ensure that dsymutil and strip is present + find_program(DSYMUTIL dsymutil) + if (DSYMUTIL STREQUAL "DSYMUTIL-NOTFOUND") + message(FATAL_ERROR "dsymutil not found") + endif() + find_program(STRIP strip) + if (STRIP STREQUAL "STRIP-NOTFOUND") + message(FATAL_ERROR "strip not found") + endif() + + else (CMAKE_SYSTEM_NAME STREQUAL Darwin) + + # Ensure that objcopy is present + find_program(OBJCOPY objcopy) + if (OBJCOPY STREQUAL "OBJCOPY-NOTFOUND") + message(FATAL_ERROR "objcopy not found") + endif() + endif (CMAKE_SYSTEM_NAME STREQUAL Darwin) endif(WIN32) # Build a list of compiler definitions by putting -D in front of each define. @@ -242,6 +263,69 @@ function(add_precompiled_header header cppFile targetSources) endif(MSVC) endfunction() +function(strip_symbols targetName outputFilename) + if(CLR_CMAKE_PLATFORM_UNIX) + if(UPPERCASE_CMAKE_BUILD_TYPE STREQUAL RELEASE) + + # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE + # generator expression doesn't work correctly returning the wrong path and on + # the newer cmake versions the LOCATION property isn't supported anymore. + if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) + set(strip_source_file $<TARGET_FILE:${targetName}>) + else() + get_property(strip_source_file TARGET ${targetName} PROPERTY LOCATION) + endif() + + if(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(strip_destination_file ${strip_source_file}.dwarf) + + add_custom_command( + TARGET ${targetName} + POST_BUILD + VERBATIM + COMMAND ${DSYMUTIL} --flat --minimize ${strip_source_file} + COMMAND ${STRIP} -u -r ${strip_source_file} + COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} + ) + else(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(strip_destination_file ${strip_source_file}.dbg) + + add_custom_command( + TARGET ${targetName} + POST_BUILD + VERBATIM + COMMAND ${OBJCOPY} --only-keep-debug ${strip_source_file} ${strip_destination_file} + COMMAND ${OBJCOPY} --strip-unneeded ${strip_source_file} + COMMAND ${OBJCOPY} --add-gnu-debuglink=${strip_destination_file} ${strip_source_file} + COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} + ) + endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) + + set(${outputFilename} ${strip_destination_file} PARENT_SCOPE) + endif(UPPERCASE_CMAKE_BUILD_TYPE STREQUAL RELEASE) + endif(CLR_CMAKE_PLATFORM_UNIX) +endfunction() + +function(install_clr targetName) + strip_symbols(${targetName} strip_destination_file) + + # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE + # generator expression doesn't work correctly returning the wrong path and on + # the newer cmake versions the LOCATION property isn't supported anymore. + if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) + set(install_source_file $<TARGET_FILE:${targetName}>) + else() + get_property(install_source_file TARGET ${targetName} PROPERTY LOCATION) + endif() + + install(PROGRAMS ${install_source_file} DESTINATION .) + if(WIN32) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/${targetName}.pdb DESTINATION PDB) + else() + install(FILES ${strip_destination_file} DESTINATION .) + endif() +endfunction() + # Includes if (CMAKE_CONFIGURATION_TYPES) # multi-configuration generator? diff --git a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/debian/Microsoft.NETCore.Runtime.CoreCLR.pkgproj b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/debian/Microsoft.NETCore.Runtime.CoreCLR.pkgproj index b628723123..989d370b84 100644 --- a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/debian/Microsoft.NETCore.Runtime.CoreCLR.pkgproj +++ b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/debian/Microsoft.NETCore.Runtime.CoreCLR.pkgproj @@ -31,14 +31,14 @@ <TargetPath>runtimes/$(PackageTargetRuntime)/native</TargetPath> </File> - <!-- Using lib/dotnet here. There is no TFM for this since it is a runtime itself. --> + <!-- Using lib/netstandard1.0 here. There is no TFM for this since it is a runtime itself. --> <File Include="@(ArchitectureSpecificLibFile)"> - <TargetPath>runtimes/$(PackageTargetRuntime)/lib/dotnet</TargetPath> + <TargetPath>runtimes/$(PackageTargetRuntime)/lib/netstandard1.0</TargetPath> </File> <!-- No reference: don't permit reference to the implementation from lib --> <File Include="$(PlaceholderFile)"> - <TargetPath>ref/dotnet</TargetPath> + <TargetPath>ref/netstandard1.0</TargetPath> </File> <File Include="@(ArchitectureSpecificToolFile)"> diff --git a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/osx/Microsoft.NETCore.Runtime.CoreCLR.pkgproj b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/osx/Microsoft.NETCore.Runtime.CoreCLR.pkgproj index 895be95978..aac843b538 100644 --- a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/osx/Microsoft.NETCore.Runtime.CoreCLR.pkgproj +++ b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/osx/Microsoft.NETCore.Runtime.CoreCLR.pkgproj @@ -29,14 +29,14 @@ <TargetPath>runtimes/$(PackageTargetRuntime)/native</TargetPath> </File> - <!-- Using lib/dotnet here. There is no TFM for this since it is a runtime itself. --> + <!-- Using lib/netstandard1.0 here. There is no TFM for this since it is a runtime itself. --> <File Include="@(ArchitectureSpecificLibFile)"> - <TargetPath>runtimes/$(PackageTargetRuntime)/lib/dotnet</TargetPath> + <TargetPath>runtimes/$(PackageTargetRuntime)/lib/netstandard1.0</TargetPath> </File> <!-- No reference: don't permit reference to the implementation from lib --> <File Include="$(PlaceholderFile)"> - <TargetPath>ref/dotnet</TargetPath> + <TargetPath>ref/netstandard1.0</TargetPath> </File> <File Include="@(ArchitectureSpecificToolFile)"> diff --git a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/rhel/Microsoft.NETCore.Runtime.CoreCLR.pkgproj b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/rhel/Microsoft.NETCore.Runtime.CoreCLR.pkgproj index 5cd175906f..d17f607985 100644 --- a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/rhel/Microsoft.NETCore.Runtime.CoreCLR.pkgproj +++ b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/rhel/Microsoft.NETCore.Runtime.CoreCLR.pkgproj @@ -31,14 +31,14 @@ <TargetPath>runtimes/$(PackageTargetRuntime)/native</TargetPath> </File> - <!-- Using lib/dotnet here. There is no TFM for this since it is a runtime itself. --> + <!-- Using lib/netstandard1.0 here. There is no TFM for this since it is a runtime itself. --> <File Include="@(ArchitectureSpecificLibFile)"> - <TargetPath>runtimes/$(PackageTargetRuntime)/lib/dotnet</TargetPath> + <TargetPath>runtimes/$(PackageTargetRuntime)/lib/netstandard1.0</TargetPath> </File> <!-- No reference: don't permit reference to the implementation from lib --> <File Include="$(PlaceholderFile)"> - <TargetPath>ref/dotnet</TargetPath> + <TargetPath>ref/netstandard1.0</TargetPath> </File> <File Include="@(ArchitectureSpecificToolFile)"> diff --git a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/ubuntu/Microsoft.NETCore.Runtime.CoreCLR.pkgproj b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/ubuntu/Microsoft.NETCore.Runtime.CoreCLR.pkgproj index de2110ae14..174b823f5f 100644 --- a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/ubuntu/Microsoft.NETCore.Runtime.CoreCLR.pkgproj +++ b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/ubuntu/Microsoft.NETCore.Runtime.CoreCLR.pkgproj @@ -31,14 +31,14 @@ <TargetPath>runtimes/$(PackageTargetRuntime)/native</TargetPath> </File> - <!-- Using lib/dotnet here. There is no TFM for this since it is a runtime itself. --> + <!-- Using lib/netstandard1.0 here. There is no TFM for this since it is a runtime itself. --> <File Include="@(ArchitectureSpecificLibFile)"> - <TargetPath>runtimes/$(PackageTargetRuntime)/lib/dotnet</TargetPath> + <TargetPath>runtimes/$(PackageTargetRuntime)/lib/netstandard1.0</TargetPath> </File> <!-- No reference: don't permit reference to the implementation from lib --> <File Include="$(PlaceholderFile)"> - <TargetPath>ref/dotnet</TargetPath> + <TargetPath>ref/netstandard1.0</TargetPath> </File> <File Include="@(ArchitectureSpecificToolFile)"> diff --git a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/win/Microsoft.NETCore.Runtime.CoreCLR.pkgproj b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/win/Microsoft.NETCore.Runtime.CoreCLR.pkgproj index fb2d5bfa7a..4779b7154d 100644 --- a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/win/Microsoft.NETCore.Runtime.CoreCLR.pkgproj +++ b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/win/Microsoft.NETCore.Runtime.CoreCLR.pkgproj @@ -29,9 +29,9 @@ <TargetPath>runtimes/$(PackageTargetRuntime)/native</TargetPath> </File> - <!-- Using lib/dotnet here. There is no TFM for this since it is a runtime itself. --> + <!-- Using lib/netstandard1.0 here. There is no TFM for this since it is a runtime itself. --> <File Include="@(ArchitectureSpecificLibFile)"> - <TargetPath>runtimes/$(PackageTargetRuntime)/lib/dotnet</TargetPath> + <TargetPath>runtimes/$(PackageTargetRuntime)/lib/netstandard1.0</TargetPath> </File> <File Include="@(ArchitectureSpecificToolFile)"> @@ -40,7 +40,7 @@ <!-- No reference: don't permit reference to the implementation from lib --> <File Include="$(PlaceholderFile)"> - <TargetPath>ref/dotnet</TargetPath> + <TargetPath>ref/netstandard1.0</TargetPath> </File> </ItemGroup> diff --git a/src/ToolBox/SOS/Strike/CMakeLists.txt b/src/ToolBox/SOS/Strike/CMakeLists.txt index f4b157b2c7..77d929d69b 100644 --- a/src/ToolBox/SOS/Strike/CMakeLists.txt +++ b/src/ToolBox/SOS/Strike/CMakeLists.txt @@ -146,9 +146,8 @@ add_dependencies(sos mscordaccore) target_link_libraries(sos ${SOS_LIBRARY}) # add the install targets -install (TARGETS sos DESTINATION .) -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/sos.pdb DESTINATION PDB) -else(WIN32) - install (FILES sosdocsunix.txt DESTINATION .) -endif(WIN32) +install_clr(sos) + +if(NOT WIN32) + install(FILES sosdocsunix.txt DESTINATION .) +endif(NOT WIN32) diff --git a/src/ToolBox/SOS/lldbplugin/CMakeLists.txt b/src/ToolBox/SOS/lldbplugin/CMakeLists.txt index 90fbcbd4e1..438ae33478 100644 --- a/src/ToolBox/SOS/lldbplugin/CMakeLists.txt +++ b/src/ToolBox/SOS/lldbplugin/CMakeLists.txt @@ -93,4 +93,4 @@ if (CLR_CMAKE_PLATFORM_UNIX) endif() # add the install targets -install (TARGETS sosplugin DESTINATION .) +install_clr(sosplugin)
\ No newline at end of file diff --git a/src/coreclr/hosts/coreconsole/CMakeLists.txt b/src/coreclr/hosts/coreconsole/CMakeLists.txt index 8848ff7d1a..634fdb77d6 100644 --- a/src/coreclr/hosts/coreconsole/CMakeLists.txt +++ b/src/coreclr/hosts/coreconsole/CMakeLists.txt @@ -27,8 +27,6 @@ else() ) # Can't compile on linux yet so only add for windows - # add the install targets - install (TARGETS CoreConsole DESTINATION .) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$ENV{__BuildType}/CoreConsole.pdb DESTINATION PDB) + install_clr(CoreConsole) endif(CLR_CMAKE_PLATFORM_UNIX)
\ No newline at end of file diff --git a/src/coreclr/hosts/corerun/CMakeLists.txt b/src/coreclr/hosts/corerun/CMakeLists.txt index 3a992ebcf5..7b25c12d6b 100644 --- a/src/coreclr/hosts/corerun/CMakeLists.txt +++ b/src/coreclr/hosts/corerun/CMakeLists.txt @@ -32,10 +32,6 @@ else() ) # Can't compile on linux yet so only add for windows - # add the install targets - install (TARGETS CoreRun DESTINATION .) + install_clr(CoreRun) - # We will generate PDB only for the debug configuration - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/CoreRun.pdb DESTINATION PDB) - endif(CLR_CMAKE_PLATFORM_UNIX)
\ No newline at end of file diff --git a/src/coreclr/hosts/osxbundlerun/CMakeLists.txt b/src/coreclr/hosts/osxbundlerun/CMakeLists.txt index 9c8fd7a275..2ccc881dbe 100644 --- a/src/coreclr/hosts/osxbundlerun/CMakeLists.txt +++ b/src/coreclr/hosts/osxbundlerun/CMakeLists.txt @@ -21,4 +21,4 @@ add_dependencies(osxbundlerun coreclr ) -install (TARGETS osxbundlerun DESTINATION .) +install_clr(osxbundlerun) diff --git a/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt b/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt index f4840edf38..cb18e82776 100644 --- a/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt +++ b/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt @@ -30,4 +30,4 @@ add_dependencies(coreconsole coreclr ) -install (TARGETS coreconsole DESTINATION .) +install_clr(coreconsole)
\ No newline at end of file diff --git a/src/coreclr/hosts/unixcorerun/CMakeLists.txt b/src/coreclr/hosts/unixcorerun/CMakeLists.txt index 4563ba9938..1f0c75995e 100644 --- a/src/coreclr/hosts/unixcorerun/CMakeLists.txt +++ b/src/coreclr/hosts/unixcorerun/CMakeLists.txt @@ -30,4 +30,4 @@ add_dependencies(corerun coreclr ) -install (TARGETS corerun DESTINATION .) +install_clr(corerun)
\ No newline at end of file diff --git a/src/corefx/System.Globalization.Native/CMakeLists.txt b/src/corefx/System.Globalization.Native/CMakeLists.txt index 879dc5bc18..bf279efe6a 100644 --- a/src/corefx/System.Globalization.Native/CMakeLists.txt +++ b/src/corefx/System.Globalization.Native/CMakeLists.txt @@ -73,4 +73,5 @@ else() add_definitions(-DU_DISABLE_RENAMING=1) endif() -install (TARGETS System.Globalization.Native DESTINATION .) +# add the install targets +install_clr(System.Globalization.Native)
\ No newline at end of file diff --git a/src/dlls/clretwrc/CMakeLists.txt b/src/dlls/clretwrc/CMakeLists.txt index 36205b5fe1..b1f7a49088 100644 --- a/src/dlls/clretwrc/CMakeLists.txt +++ b/src/dlls/clretwrc/CMakeLists.txt @@ -20,8 +20,4 @@ add_library_clr(clretwrc SHARED ) # add the install targets -install (TARGETS clretwrc DESTINATION .) - -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/clretwrc.pdb DESTINATION PDB) -endif(WIN32) +install_clr(clretwrc)
\ No newline at end of file diff --git a/src/dlls/dbgshim/CMakeLists.txt b/src/dlls/dbgshim/CMakeLists.txt index 655cb0a28b..c3ebaf5d06 100644 --- a/src/dlls/dbgshim/CMakeLists.txt +++ b/src/dlls/dbgshim/CMakeLists.txt @@ -71,7 +71,4 @@ endif(WIN32) target_link_libraries(dbgshim ${DBGSHIM_LIBRARIES}) # add the install targets -install (TARGETS dbgshim DESTINATION .) -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/dbgshim.pdb DESTINATION PDB) -endif(WIN32) +install_clr(dbgshim) diff --git a/src/dlls/mscordac/CMakeLists.txt b/src/dlls/mscordac/CMakeLists.txt index ea655e77b8..9a28479fed 100644 --- a/src/dlls/mscordac/CMakeLists.txt +++ b/src/dlls/mscordac/CMakeLists.txt @@ -106,7 +106,4 @@ endif(WIN32) target_link_libraries(mscordaccore ${COREDAC_LIBRARIES}) # add the install targets -install (TARGETS mscordaccore DESTINATION .) -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/mscordaccore.pdb DESTINATION PDB) -endif(WIN32) +install_clr(mscordaccore)
\ No newline at end of file diff --git a/src/dlls/mscordbi/CMakeLists.txt b/src/dlls/mscordbi/CMakeLists.txt index 0c8a685b76..2748bdf4a2 100644 --- a/src/dlls/mscordbi/CMakeLists.txt +++ b/src/dlls/mscordbi/CMakeLists.txt @@ -95,7 +95,4 @@ elseif(CLR_CMAKE_PLATFORM_UNIX) endif(WIN32) # add the install targets -install (TARGETS mscordbi DESTINATION .) -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/mscordbi.pdb DESTINATION PDB) -endif(WIN32) +install_clr(mscordbi)
\ No newline at end of file diff --git a/src/dlls/mscoree/coreclr/CMakeLists.txt b/src/dlls/mscoree/coreclr/CMakeLists.txt index 2c57fb630e..78ec166065 100644 --- a/src/dlls/mscoree/coreclr/CMakeLists.txt +++ b/src/dlls/mscoree/coreclr/CMakeLists.txt @@ -140,7 +140,8 @@ if(WIN32) clr_unknown_arch() endif() - add_custom_command(TARGET coreclr + add_custom_command( + TARGET coreclr POST_BUILD COMMAND ${CMAKE_CXX_COMPILER} /P /EP /TP ${PREPROCESS_DEFINITIONS} ${INC_DIR} /Fi${CMAKE_CURRENT_BINARY_DIR}/daccess.i ${CLR_DIR}/src/debug/daccess/daccess.cpp COMMAND ${BuildToolsDir}/dactablegen.exe /dac:${CMAKE_CURRENT_BINARY_DIR}/daccess.i /pdb:${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/coreclr.pdb /dll:$<TARGET_FILE:coreclr> /bin:${CMAKE_CURRENT_BINARY_DIR}/wks.bin @@ -160,7 +161,4 @@ else() endif(WIN32) # add the install targets -install (TARGETS coreclr DESTINATION .) -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/coreclr.pdb DESTINATION PDB) -endif(WIN32) +install_clr(coreclr)
\ No newline at end of file diff --git a/src/ilasm/CMakeLists.txt b/src/ilasm/CMakeLists.txt index 4c5a7f63a9..e6828e7a49 100644 --- a/src/ilasm/CMakeLists.txt +++ b/src/ilasm/CMakeLists.txt @@ -66,7 +66,6 @@ if(CLR_CMAKE_PLATFORM_UNIX) dl ) endif(NOT CMAKE_SYSTEM_NAME STREQUAL FreeBSD AND NOT CMAKE_SYSTEM_NAME STREQUAL NetBSD) - else() target_link_libraries(ilasm ${ILASM_LINK_LIBRARIES} @@ -76,8 +75,6 @@ else() oleaut32 shell32 ) - - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/ilasm.pdb DESTINATION PDB) endif(CLR_CMAKE_PLATFORM_UNIX) -install (TARGETS ilasm DESTINATION .) +install_clr(ilasm)
\ No newline at end of file diff --git a/src/ildasm/exe/CMakeLists.txt b/src/ildasm/exe/CMakeLists.txt index 8a57044ce6..8b468f07a4 100644 --- a/src/ildasm/exe/CMakeLists.txt +++ b/src/ildasm/exe/CMakeLists.txt @@ -69,10 +69,6 @@ else() oleaut32 shell32 ) - - # We will generate PDB only for the debug configuration - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/ildasm.pdb DESTINATION PDB) - endif(CLR_CMAKE_PLATFORM_UNIX) -install (TARGETS ildasm DESTINATION .) +install_clr(ildasm)
\ No newline at end of file diff --git a/src/jit/codegencommon.cpp b/src/jit/codegencommon.cpp index b81d81322e..fbd96eb02b 100644 --- a/src/jit/codegencommon.cpp +++ b/src/jit/codegencommon.cpp @@ -3903,9 +3903,15 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, { #if defined(FEATURE_UNIX_AMD64_STRUCT_PASSING) return type; -#else // defined(FEATURE_UNIX_AMD64_STRUCT_PASSING) +#elif defined(_TARGET_ARM_) + LclVarDsc varDsc = compiler->lvaTable[varNum]; + return varDsc.lvIsHfaRegArg ? varDsc.GetHfaType() : varDsc.lvType; + + // TODO-ARM64: Do we need the above to handle HFA structs on ARM64? + +#else // !_TARGET_ARM_ return compiler->lvaTable[varNum].lvType; -#endif // defined(FEATURE_UNIX_AMD64_STRUCT_PASSING) +#endif // !_TARGET_ARM_ } } regArgTab [max(MAX_REG_ARG,MAX_FLOAT_REG_ARG)] = { }; @@ -4762,7 +4768,6 @@ void CodeGen::genFnPrologCalleeRegArgs(regNumber xtraReg, } /* Finally take care of the remaining arguments that must be enregistered */ - while (regArgMaskLive) { regMaskTP regArgMaskLiveSave = regArgMaskLive; diff --git a/src/jit/standalone/CMakeLists.txt b/src/jit/standalone/CMakeLists.txt index ba987b409b..80e9a0e8e9 100644 --- a/src/jit/standalone/CMakeLists.txt +++ b/src/jit/standalone/CMakeLists.txt @@ -47,7 +47,4 @@ target_link_libraries(ryujit ) # add the install targets -install (TARGETS ryujit DESTINATION .) -if(WIN32) - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/ryujit.pdb DESTINATION PDB) -endif(WIN32) +install_clr(ryujit)
\ No newline at end of file diff --git a/src/mscorlib/src/System/Diagnostics/Stacktrace.cs b/src/mscorlib/src/System/Diagnostics/Stacktrace.cs index 897efc427b..85ec034eae 100644 --- a/src/mscorlib/src/System/Diagnostics/Stacktrace.cs +++ b/src/mscorlib/src/System/Diagnostics/Stacktrace.cs @@ -560,25 +560,41 @@ namespace System.Diagnostics { sb.Append(']'); } - // arguments printing - sb.Append('('); - ParameterInfo[] pi = mb.GetParameters(); - bool fFirstParam = true; - for (int j = 0; j < pi.Length; j++) + ParameterInfo[] pi = null; +#if FEATURE_CORECLR + try + { +#endif + pi = mb.GetParameters(); +#if FEATURE_CORECLR + } + catch + { + // The parameter info cannot be loaded, so we don't + // append the parameter list. + } +#endif + if (pi != null) { - if (fFirstParam == false) - sb.Append(", "); - else - fFirstParam = false; - - String typeName = "<UnknownType>"; - if (pi[j].ParameterType != null) - typeName = pi[j].ParameterType.Name; - sb.Append(typeName); - sb.Append(' '); - sb.Append(pi[j].Name); - } - sb.Append(')'); + // arguments printing + sb.Append('('); + bool fFirstParam = true; + for (int j = 0; j < pi.Length; j++) + { + if (fFirstParam == false) + sb.Append(", "); + else + fFirstParam = false; + + String typeName = "<UnknownType>"; + if (pi[j].ParameterType != null) + typeName = pi[j].ParameterType.Name; + sb.Append(typeName); + sb.Append(' '); + sb.Append(pi[j].Name); + } + sb.Append(')'); + } // source location printing if (displayFilenames && (sf.GetILOffset() != -1)) diff --git a/src/scripts/genXplatLttng.py b/src/scripts/genXplatLttng.py index 7befa6136e..d343b122ff 100644 --- a/src/scripts/genXplatLttng.py +++ b/src/scripts/genXplatLttng.py @@ -444,7 +444,7 @@ def generateLttngFiles(etwmanifest,eventprovider_directory): add_subdirectory(tracepointprovider) # Install the static eventprovider library - install (TARGETS eventprovider DESTINATION lib) + install(TARGETS eventprovider DESTINATION lib) """) topCmake.close() @@ -481,11 +481,11 @@ def generateLttngFiles(etwmanifest,eventprovider_directory): tracepointprovider_Cmake.write(""" ) target_link_libraries(coreclrtraceptprovider - -llttng-ust + -llttng-ust ) - #Install the static coreclrtraceptprovider library - install (TARGETS coreclrtraceptprovider DESTINATION .) + # Install the static coreclrtraceptprovider library + install_clr(coreclrtraceptprovider) """) tracepointprovider_Cmake.close() diff --git a/src/tools/crossgen/CMakeLists.txt b/src/tools/crossgen/CMakeLists.txt index 9bbf37334a..d5e956620f 100644 --- a/src/tools/crossgen/CMakeLists.txt +++ b/src/tools/crossgen/CMakeLists.txt @@ -64,14 +64,11 @@ else() if (NOT CLR_CMAKE_PLATFORM_ARCH_ARM64) target_link_libraries(crossgen ${STATIC_MT_VCRT_LIB}) endif() - - # We will generate PDB only for the debug configuration - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/crossgen.pdb DESTINATION PDB) - endif(CLR_CMAKE_PLATFORM_UNIX) -install (TARGETS crossgen DESTINATION .) - add_subdirectory(../../zap/crossgen ../../zap/crossgen) add_subdirectory(../../vm/crossgen ../../vm/crossgen) add_subdirectory(../../vm/crossgen_mscorlib ../../vm/crossgen_mscorlib) + +# add the install targets +install_clr(crossgen)
\ No newline at end of file diff --git a/tests/arm64/Tests.lst b/tests/arm64/Tests.lst index 6c8d8a6575..38f3b1b767 100644 --- a/tests/arm64/Tests.lst +++ b/tests/arm64/Tests.lst @@ -58435,185 +58435,3 @@ Expected=100 MaxAllowedDurationSeconds=600 Categories=Pri1;RT;EXPECTED_PASS HostStyle=Any -[CheckAddInt_1.exe_8447] -RelativePath=baseservices\threading\interlocked\add\CheckAddInt_1\CheckAddInt_1.exe -WorkingDir=baseservices\threading\interlocked\add\CheckAddInt_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[CheckAddInt_2.exe_8448] -RelativePath=baseservices\threading\interlocked\add\CheckAddInt_2\CheckAddInt_2.exe -WorkingDir=baseservices\threading\interlocked\add\CheckAddInt_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[CompareExchangeLong_1.exe_8449] -RelativePath=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_1\CompareExchangeLong_1.exe -WorkingDir=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[CompareExchangeLong_2.exe_8450] -RelativePath=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_2\CompareExchangeLong_2.exe -WorkingDir=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[CompareExchangeLong_3.exe_8451] -RelativePath=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_3\CompareExchangeLong_3.exe -WorkingDir=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_3 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[CompareExchangeLong_4.exe_8452] -RelativePath=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_4\CompareExchangeLong_4.exe -WorkingDir=baseservices\threading\interlocked\compareexchange\CompareExchangeLong_4 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartBool_1.exe_8453] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartBool_1\ThreadStartBool_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartBool_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartBool_2.exe_8454] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartBool_2\ThreadStartBool_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartBool_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartDecimal_1.exe_8455] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartDecimal_1\ThreadStartDecimal_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartDecimal_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartDecimal_2.exe_8456] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartDecimal_2\ThreadStartDecimal_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartDecimal_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartDecimal_3.exe_8457] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartDecimal_3\ThreadStartDecimal_3.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartDecimal_3 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartDouble_1.exe_8458] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartDouble_1\ThreadStartDouble_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartDouble_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartDouble_2.exe_8459] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartDouble_2\ThreadStartDouble_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartDouble_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartDouble_3.exe_8460] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartDouble_3\ThreadStartDouble_3.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartDouble_3 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartObject_1.exe_8461] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartObject_1\ThreadStartObject_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartObject_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartObject_2.exe_8462] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartObject_2\ThreadStartObject_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartObject_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartSByte_1.exe_8463] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartSByte_1\ThreadStartSByte_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartSByte_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartSByte_2.exe_8464] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartSByte_2\ThreadStartSByte_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartSByte_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartSByte_3.exe_8465] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartSByte_3\ThreadStartSByte_3.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartSByte_3 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartString_1.exe_8466] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartString_1\ThreadStartString_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartString_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartString_2.exe_8467] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartString_2\ThreadStartString_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartString_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartString_3.exe_8468] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartString_3\ThreadStartString_3.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartString_3 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartString_4.exe_8469] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartString_4\ThreadStartString_4.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartString_4 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartULong_1.exe_8470] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartULong_1\ThreadStartULong_1.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartULong_1 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartULong_2.exe_8471] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartULong_2\ThreadStartULong_2.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartULong_2 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any -[ThreadStartULong_3.exe_8472] -RelativePath=baseservices\threading\paramthreadstart\ThreadStartULong_3\ThreadStartULong_3.exe -WorkingDir=baseservices\threading\paramthreadstart\ThreadStartULong_3 -Expected=100 -MaxAllowedDurationSeconds=600 -Categories=Pri2;RT;EXPECTED_FAIL;NATIVE_INTEROP -HostStyle=Any |