summaryrefslogtreecommitdiff
path: root/src/coreclr
AgeCommit message (Collapse)AuthorFilesLines
2018-03-21Fix strings from being concatenated (#17040)Frank Gambino1-1/+1
2018-02-17delete unused mirror files (#16423)Sergey Andreenko9-9/+0
2017-09-13Fix AV in corerun on invalid filenameJan Kotas1-1/+1
Before this fix, corerun would AV on certain invalid paths e.g.: corerun test.exe\
2017-08-27Remove dead HResults.cs (#13611)Dan Moseley1-1/+1
* Fix old copy paste mistake * Remove dead HResults.cs * Rename __HResults to HResults * Rename other two __HResults classes * Combine into single HResults class, to match CoreRT * Make hex consistently uppercase * Sort HResults
2017-04-24Ensure using the given executable path. (#10525)Jim Ma2-1/+23
* Ensure using the given executable path. Fix the bug that corerun trying to load the executable from current directory even if the user has specified a full path of the executable. Fix #5631 * Revert "Ensure using the given executable path." This reverts commit d237e6329f85132429176a0644cf6d93c9437ff4. * Partially implemented. * Ensure app context using correct IL file path. Extracting simple name from the given file path and look up its value in tpa list. If the value does not equal to the given file path, we update the value with correct given file path. Fix #5631 * Re-arrange the slashIndex to eliminate unneccessary code. * A few performance improvement with a memory leak bug fixed. * Added the absolute path of target assembly to tpa list. Fix #5631 * Added the path of target assembly to tpa on Windows. Fix #5631
2017-04-20Enable corerun to select Globalization Invariant mode (#11097)SaeHie Park1-7/+21
* Enable corerun to select Globalization Invariant mode * Support 'true' also
2017-04-19Change ICLRRuntimeHost2 to ICLRRuntimeHost4 for Windows corerun. (#10967)Jim Ma2-22/+26
* Change ICLRRuntimeHost2 to ICLRRuntimeHost4 for Windows corerun. Since we've introduced ICLRRuntimeHost4 in PR #10842 for Unix, we apply it for Windows corerun as well. Fix #10960
2017-04-13Ensure Environment.ExitCode works correctly after app domain unloaded. (#10842)Jim Ma2-3/+14
* Ensure Environment.ExitCode works correctly after app domain unloaded. This PR addresses 2 problems of Environment.ExitCode: 1. Can't get correct exit code of main function. 2. Can't set %errorlevel%. Details can be found on #6206 Fix #6206
2017-04-08Fix corerun issue when loaded from PATH (#10745)Hadi Brais3-29/+7
2017-03-29Fix dependency to coreclr and mscorrc in Linux (#10138)Hyeongseok Oh2-8/+0
* Fix dependency to coreclr and mscorrc in Linux Remove dependency with coreclr in some projects for Linux Recover build mscorrc for cross architecture in Linux * Fix CMakeLists.txt in src/dlls minimize uses of CLR_CROSS_COMPONENTS_BUILD flag in CMakeLists.txt Modify root/CMakeLists.txt to exclude corerun and coreconsole build during cross component build
2017-01-31Support cross-building CoreCLR for arm64 Android (#9173)Frederik Carlier2-4/+15
* Support cross-building CoreCLR for arm64 Android * Link gcc_s before libunwind
2017-01-13Fixes to make runtime work on ARM64 Linux (#8947)Jan Vorlicek1-1/+1
This is a result of attempt to bring up CoreCLR on ARM64 Android. The bring up is on hold now, but I want to check in the changes that added ARM64 asm helpers and fixed general Linux ARM64 issues.
2017-01-03Only add CORE_LIBRARIES to TPA list if it is different from clrFilesAbsolutePathEric Mellino1-1/+4
This avoids placing duplicate entries on the TPA list.
2016-12-29Add CORE_LIBRARIES to the TPA list if it's set in unixcoreruncommonEric Mellino1-1/+2
2016-12-26Remove files related to legacy build system (#8723)Robert4-121/+0
2016-11-09Memory growth algorithm improvement in coreconsole (#7870)Roman Shchekin1-1/+1
* Now Append will work properly if strLen is big (for example 3xm_capacity). And value 1.5 is better for memory growth. * Correct way of calculating 1.5 (without floating point calculation, thanks mikedn) * After long discussion we decided that simple and aggressive allocation is better for this case
2016-10-28C++ conformance. (building with /permissive-) (#7855)Phil Christensen2-6/+6
These issues were found when building with the /permissive- flag in the latest version of MSVC. No tests were added/modified because this does not change any behavior. There are a few types of language conformance issues fixed in this: 1) Strict string conversion (this is also covered by the /Zc:strictStrings flag) The 'const' is not implicitly dropped by string literals, which means the following is not allowed: char str = "const string literal"; //error: cannot convert a 'const char' to a 'char*' This fix to to make str 'const char*'. (This can have a domino effect depending on where str is used) 2) Fully qualified inline declarations members inside class struct A { void A::f() { } // Error: illegal qualified name in member declaration, remove redundant 'A::' to fix }; 3) MSVC by default will allows name lookup in a dependent base. This is disabled by /permissive- template <class T> struct B { void f(); }; template <class T> struct D : public B<T> //B is a dependent base because its type depends on the type of T in D<T>. { //One possible fix is to uncomment the following line. If this //were a type we should have 'using typename'... //using B<T>::f; void g() { f(); //Error: identifier not found, one possible fix is change it to 'this->f();' } }; void h() { D<int> d; d.g(); } 4) Warning 4800 has been removed in version 19.1 (1910) of the compiler. For backwards compatability, surround the usage of 4800. This is not related to C++ conformance. #if _MSC_VER <= 1900 // 'BOOL' forcing value to bool 'true' or 'false' #pragma warning(disable: 4800) #endif
2016-10-19Remove the UseLatestBehaviorWhenTFMNotSpecified compat switch (#5708)AlexGhiondea3-9/+0
* Default to latest behavior when a TFM is not specified Instead of requiring that a compatibility switch is set in order to get the latest behavior for all AppContext switches that are based on TFM, have that behavior on by default. * Remove the UseLatestBehaviorWhenTFMNotSpecified compat switch
2016-08-16Apply correct symbolic name _ARM_ instead of _TARGET_ARM_ (#6756)Hyung-Kyu Choi1-2/+2
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
2016-08-11ARM: disable stack unwinding using DWARF (#6700)hqueue1-0/+14
libunwind for ARM does not interpret ARM vfpv3/NEON registers in DWARF format correctly. Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
2016-07-19Fix self-process identification for FreeBSD (#6314)Jostein Kjønigsen1-1/+23
FreeBSD does not come with procfs enabled by default, and should use sysctl() for this purpose. While it has similarities with NetBSD's implementation, there are a few subtle differences, which justifies leaving this implementation under its own guard. It's also worth noting that on FreeBSD sysctl.h MUST be present, which is unlike NetBSD. Therefore the HAVE_SYS_SYSCTL_H define is not checked for or used. This commit fixes https://github.com/dotnet/coreclr/issues/6184. This commit is based on the following commit from core-setup: https://github.com/dotnet/core-setup/commit/d5ce08014a174b006a3b409b8bb93d003ae583a0
2016-06-15Initial support of breakpoint setting by source file + line on Linux using ↵Evgeny Pavlov1-1/+2
portable pdb reader (#5688) * Initial support of breakpoint setting by source + line on Linux * Fix macro redefinition error in OSX build * Fix after review from Mike McLaughlin
2016-06-11Add check for sys/sysctl.h (#5726)Peter Jas1-0/+2
On some operating systems `<sys/sysctl.h>`is not present yet `sysct` function in available. One example is Alpine Linux which uses musl-libc as opposed to GNU libc. Ref: dotnet/corefx#6253
2016-05-26Linux/ARM: Regression fix in release build since "UNW_ARM_UNWIND_METHOD=6" ↵Geunsik Lim1-14/+0
(#5126) > https://github.com/dotnet/coreclr/pull/3502/ > Fix Stack Unwind Behavior of Libunwind-ARM We have been getting the 300+ failures(in ./JIT/ directory) in release-build mode whenever we have always run CoreCLR unit-test since https://github.com/myungjoo/coreclr/commit/35b5df6888f1574e6ef9313c6bc8522d1817573d. (Reference - https://wiki.linaro.org/KenWerner/Sandbox/libunwind#overhead_of_the_ARM_specific_unwind-tables) With recent fixes on stack unwindings, it appears that we no more send ambiguous requests to libunwind-arm.(Checked by @myungjoo, with cases of #3462) From now on, let's remove the unwind environment variable (e.g., UNW_ARM_UNWIND_METHOD=6) Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com> Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com> CC: Ben Pye <@benpye> CC: Jan Kotas <@jkotas> CC: Matt Mitchell <@mmitche>
2016-05-25Merge pull request #5220 from adityamandaleeka/force_gc_concurrentAditya Mandaleeka1-18/+2
Check CLRConfig value explicitly to determine whether concurrent GC was forced
2016-05-25Remove CORECLR_CONCURRENT_GC from Unix coreruncommon.Aditya Mandaleeka1-18/+2
2016-05-24Support the CORE_LIBRARIES environment variable on Unix (#5112)Manu1-0/+7
Mimic the Windows behavior by adding to the search path of native dlls the content of the CORE_LIBRARIES environment variable.
2016-05-17Add more help options to corerun (#4973)James Ko2-2/+2
2016-04-26Keep FEATURE_MERGE_JIT_AND_ENGINE with refactored approachGaurav Khanna1-2/+0
2016-04-18enable build of cross target components.Rahul Kumar6-8/+8
Currently only enabled for arm64
2016-04-18Merge pull request #4283 from krytarowski/netbsd-support-61Jan Kotas1-2/+20
Implement GetEntrypointExecutableAbsolutePath() on NetBSD
2016-04-16Cleanup VCRuntime140.dll dependency from native componentsGaurav Khanna2-2/+4
2016-04-12Implement GetEntrypointExecutableAbsolutePath() on NetBSDKamil Rytarowski1-2/+20
For defined(KERN_PROC_PATHNAME) use sysctl(7) (introduced after NetBSD-7.0). For older NetBSD use the Linux's code.
2016-04-08Add missing .gitmirrorall fileMatt Ellis1-0/+1
[tfs-changeset: 1594511]
2016-04-07Merge pull request #4106 from janvorli/add-hosting-api-headerJan Vorlicek4-31/+69
Add header file for the hosting API
2016-04-06Add header file for the hosting APIJan Vorlicek4-31/+69
Add the header file and also modify coreruncommon.cpp to use it.
2016-04-05Fix an issue where COREHOST_SERVER_GC and COREHOST_CONCURRENT_GC were not ↵Sean Gillespie1-4/+9
respected by corerun
2016-03-22Strip symbols on release builds into separate binariesMike McLaughlin5-11/+5
Issue #3669 Created a common cmake strip_symbols function that all the modules and programs use to strip the symbols out of the main into a separate .dbg (Linux) or .dSYM (OSX) file. Added an install_clr cmake function to encapsulate the install logic. Changed all the library module cmake install lines from a TARGETS to a FILES one. The TARGETS based install directives caused cmake to relink the binary and copy the unstripped version to the install path. Left the all programs like corerun or ildasm as TARGETS installs because on OSX FILES type installs don't get marked as executable. Need to use "get_property(strip_source_file TARGET ${targetName} PROPERTY LOCATION)" for the older versions of cmake and "set(strip_source_file $<TARGET_FILE:${targetName}>)" on newer versions (v3 or greater).
2016-03-15Prune Windows mscorlibJan Kotas1-1/+0
In model.xml, I went over: - FEATURE_ conditions that are disabled on Unix - FEATURE_ conditions related to NetCF - All ApiFxInternal methods And flipped most them either to public, ImplRoot or deleted them. Testing: Run all open CoreCLR and CoreFX tests, built legacy build razzle [tfs-changeset: 1586209]
2016-03-05Replace all uses of __LINUX__ with the lower caseGeunsik Lim1-2/+2
According to https://sourceforge.net/p/predef/wiki/OperatingSystems/ (Pre-defined Compiler Macros) and http://www.faqs.org/docs/Linux-HOWTO/GCC-HOWTO.html (Porting and compiling:Automatically defined symbols), the __linux__ marcro is the right way to detect systems based on the Linux kernel and is the POSIX compliant. Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com> Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
2016-03-04Restore linking debug corerun.exe with retail CRTJohn Chen (CLR)1-1/+1
The long path support feature modified debug corerun.exe with debug CRT (msvcrtd.dll). This made it more difficult to use corerun.exe, since the debug CRT is not always available. It turns out this change is no longer necessary, so reverting part of the change to link debug corerun.exe with retail CRT (msvcrt.dll) again.
2016-03-04Fix C++11 issue when converting string to char *Ben Pye1-1/+1
2016-03-04Fix Stack Unwind Behavior of Libunwind-ARMMyungJoo Ham1-0/+14
Disable UNW_ARM_METHOD_DWARF, which gets problematic with assembly-created stacks in ARM systems. Although previous commits have fixed the compatibility issues between cpp stacks and libunwind-arm, the assembly part (asmhelpers.S) had similar problems. Fix #3462 Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
2016-03-01Fix build break on arm caused by long path support changeJohn Chen1-1/+4
[tfs-changeset: 1580615]
2016-02-29Support long paths in CoreCLR runtime on WindowsJohn Chen (JOCHEN7)3-130/+96
The CoreCLR runtime is updated to support long file paths on Windows. Pending updates to mscorlib.dll, the following scenarios are supported: * Run managed apps from a long path. * Load CoreCLR runtime and framework from a long path. * Load user assemblies from a long path. * Run CrossGen from a long path, with its input/output from a long path. * Generate debug log file at a long path. The following scenarios are not yet supported, and will be fixed in future commits: * Mscorlib.dll and framework assemblies are not yet long path compatible. Note that until mscorlib.dll is fixed, most of the runtime changes can't actually be used. * Support on non-Windows platforms. * Support for debugging and error reporting. * Tools such as ilasm or ildasm.
2016-02-18Fix GetEntrypointExecutableAbsolutePath on LinuxManu1-9/+25
Although PR#1818 was supposed to implement this for Linux, only the MacOS X implementation was correct. We are now using `readlink' on Linux to get the path of the current running executable.
2016-02-01Fix OACR errors for ProjectKdotnet-bot2-7/+7
[tfs-changeset: 1570939]
2016-01-27Update license headersdotnet-bot13-52/+39
2016-01-22NetBSD: Don't link with -ldl for dlopen(3) on NetBSDKamil Rytarowski2-6/+6
NAME dlopen, dlclose, dlsym, dlvsym, dladdr, dlctl, dlerror - dynamic link interface LIBRARY (These functions are not in a library. They are included in every dynamically linked program automatically.) SYNOPSIS #include <dlfcn.h> void * dlopen(const char *path, int mode);
2016-01-14Merge pull request #2661 from sergiy-k/pieSergiy Kuryata4-0/+8
Enable the fPIE compiler option for executables in the coreclr repo on Unix platforms