platform/upstream/coreclr.git
9 years agoMerge pull request #1248 from stephentoub/dllimport_prefix_suffix
Stephen Toub [Fri, 17 Jul 2015 01:26:01 +0000 (21:26 -0400)]
Merge pull request #1248 from stephentoub/dllimport_prefix_suffix

Update DllImport name logic to support lack of "lib" prefix

9 years agoUpdate DllImport logic to support lack of "lib" prefix
stephentoub [Thu, 16 Jul 2015 13:10:56 +0000 (09:10 -0400)]
Update DllImport logic to support lack of "lib" prefix

Today the runtime supports automatically appending an appropriate
suffix (e.g. ".so", ".dylib", etc.) for the library name provided
to DllImport.  This commit adds support for also prepending the
standard library prefix "lib".

9 years agoMerge pull request #1246 from stephentoub/fix_unix_etw
Stephen Toub [Thu, 16 Jul 2015 02:50:22 +0000 (22:50 -0400)]
Merge pull request #1246 from stephentoub/fix_unix_etw

Ensure FEATURE_MANAGED_ETW isn't set for TargetsUnix

9 years agoEnsure FEATURE_MANAGED_ETW isn't set for TargetsUnix
stephentoub [Thu, 16 Jul 2015 02:14:57 +0000 (22:14 -0400)]
Ensure FEATURE_MANAGED_ETW isn't set for TargetsUnix

Updated buildtools were brought in to coreclr, and the props file was
still using the $(OS) variable to control whether FEATURE_MANAGED_ETW was
set, but whereas that used to be used to mean what platform we were
targeting, updated buildtools use it to mean what platform we're building
on, with $(OSGroup) meaning what is the target platform.

9 years agoMerge pull request #1243 from dotnet-bot/from-tfs
Matt Ellis [Wed, 15 Jul 2015 23:27:53 +0000 (16:27 -0700)]
Merge pull request #1243 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoFix cross platform build break
Matt Ellis [Wed, 15 Jul 2015 22:56:36 +0000 (15:56 -0700)]
Fix cross platform build break

impAssignTempGen is used outside the translation unit and should not
be marked as inline.  Doing so causes link errors in release cross
platform builds.

9 years agoMerge pull request #1238 from dotnet-bot/from-tfs
Matt Ellis [Wed, 15 Jul 2015 18:37:38 +0000 (11:37 -0700)]
Merge pull request #1238 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoFix definition/initalization order build break
Matt Ellis [Wed, 15 Jul 2015 03:25:02 +0000 (20:25 -0700)]
Fix definition/initalization order build break

Clang is more strict about definition and intialization orders
matching than MSVC.

9 years agoFix to Unnecessary use of JIT_Stelem_Ref helper call when storing null in arrays.
Venkata Sivaramakrishna Ramadugu [Tue, 14 Jul 2015 23:15:18 +0000 (16:15 -0700)]
Fix to Unnecessary use of JIT_Stelem_Ref helper call when storing null in arrays.

Repro program:
     static T Dequeue<T>(T[] array, int index)
     {
         var head = array[index];
         array[index] = default(T);
         return head;
     }

     When Dequeue is instantiated over a ref type, the second line logically expands to

     object temp;
     initobj(&temp, null, 8)
     array[index] = temp

     The array store results in call to CORINFO_HELP_ARRADDR_ST helper call even though we are storing a null and a write barrier is not needed.

Fix:
     After the args of helper call are morphed, (i.e. after constant propagation is done), we can check to see whether the 3rd arg (value being assigned) is null and if so morph that into an array-indexed assignment so that a proper null and bounds check still take place.

Fix #1160

[tfs-changeset: 1501294]

9 years agoFix to bug#1173115 and Issue#1 listed in bug#1177388.
Venkata Sivaramakrishna Ramadugu [Tue, 14 Jul 2015 23:13:42 +0000 (16:13 -0700)]
Fix to bug#1173115 and Issue#1 listed in bug#1177388.

On xarch, bin-ops like add/mul/div that write to its LHS operand (i.e. target of result) and hence lower indicates to LSRA to preference the result of such bin-ops to its target operand to avoid additional moves.  The issue is that when we have nested bin-op expression like GT_MUL(GT_ADD(a,b), c), LSRA will preference GT_MUL to its LHS operand only if there are further references of it.  Since there will no further references of LHS operand GT_ADD, GT_MUL is not preferenced to GT_ADD.  This results in an additional move.  Fix in lines 4289-4307 is meant to fix this by letting to use relatedInterval even if there are no further references of it.

     With the above fix alone, there were major CQ losses since GT_STORE_LCL_VAR(GT_ADD(a,b)) would require a mov if GT_ADD is not preferenced to its parent lcl var but to its target operand ('a' in this case).  To fix this lines 2977-2981 allow a non-lclvar source of a STORE_LCL_VAR to use its parent interval as related interval for preferencing.

     With the combination so the above two fixes, there is a overall 0.32% improvement in size of the methods that got impacted.  The regressions are all smaller and a result of register preferencing got changed due to the above two fixes.

Fix #1163
CQ persuite run indicates Fractals benchmark improved by 15%.

[tfs-changeset: 1501293]

9 years agoMerge pull request #1219 from mmitche/package-json-2
Matt Mitchell [Tue, 14 Jul 2015 22:38:36 +0000 (15:38 -0700)]
Merge pull request #1219 from mmitche/package-json-2

Move CoreCLR to the modern build tools and dnx

9 years agoFix to issue- .Net 4.6 RC x64 is twice as slow as Legacy Jit64 and x86.
Venkata Sivaramakrishna Ramadugu [Tue, 14 Jul 2015 21:46:01 +0000 (14:46 -0700)]
Fix to issue- .Net 4.6 RC x64 is twice as slow as Legacy Jit64 and x86.

Perf regression is due to a stall caused by "cvtsi2sd xmm1, rax" that partially writes lower 8-bytes of xmm1 but keeps other bytes unmodified. Since there are further uses of xmm1, it will introduce a false dependency and cause stalls.

Fix is to emit "xorps targetReg, targetReg" before a cvtsi2ss/sd instruction.

Fix #993

[tfs-changeset: 1501252]

9 years agoMerge pull request #1222 from dotnet-bot/from-tfs
Jan Kotas [Tue, 14 Jul 2015 20:01:20 +0000 (13:01 -0700)]
Merge pull request #1222 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoMerge pull request #1231 from justinvp/array_reverse
Stephen Toub [Tue, 14 Jul 2015 19:47:58 +0000 (15:47 -0400)]
Merge pull request #1231 from justinvp/array_reverse

Perf: List<T>.Reverse changed to not use non-generic Array.Reverse

9 years agoImprove the performance of List<T>.Reverse
Justin Van Patten [Sun, 12 Jul 2015 00:44:53 +0000 (17:44 -0700)]
Improve the performance of List<T>.Reverse

List<T>.Reverse is currently implemented in terms of the non-generic
Array.Reverse. Array.Reverse includes a fast path for a known set
of primitive types via a call into the runtime (see TrySZReverse).
Otherwise, it falls back to slower code paths that involve boxing
for non-primitive value types.

This commit changes List<T>.Reverse to use a generic implementation
of reverse that does not have the performance issue for
non-primitive value types.

9 years agoDon't reorder operands for Vector constructor
Carol Eidt [Tue, 14 Jul 2015 04:31:46 +0000 (21:31 -0700)]
Don't reorder operands for Vector constructor

The code in simd.cpp that recognizes the constructor for fixed-size vectors (the InitN intrinsic) was incorrectly reordering the operands. Constructing the vector in reverse order is more efficient, but that can be done in codegen without change execution order.

This change results in numerous diffs, with more regressions than improvements. The diffs are due to somewhat different register pressure, due to the ordering change, and different cases of constant reuse.

Fix #1212

[tfs-changeset: 1500923]

9 years agoMerge pull request #1216 from janvorli/fix-destructor-contracts
Jan Vorlicek [Fri, 10 Jul 2015 19:22:05 +0000 (21:22 +0200)]
Merge pull request #1216 from janvorli/fix-destructor-contracts

Add missing contracts to some destructors

9 years agoSupport for SIMD Exceptions
Carol Eidt [Thu, 9 Jul 2015 23:28:23 +0000 (16:28 -0700)]
Support for SIMD Exceptions

For the CopyTo methods, we need to throw ArgumentOutOfRangeException instead of IndexOutOfRangeException for the initial index value, and then ArgumentException if the number of elements exceeds the remaining elements in the array. To support this, the GenTreeBoundsChk node now has a gtThrowKind field which indicates the kind of throw block it will branch to if the check failes.

This requires new helper calls, which I added to the end of corinfo.h.

[tfs-changeset: 1499475]

9 years agoAdd missing contracts to some constructors
Jan Vorlicek [Thu, 9 Jul 2015 23:24:02 +0000 (01:24 +0200)]
Add missing contracts to some constructors

After adding virtual destructors to some classes, the contract scanning
tool started to complain about missing contracts in some of the
constructors that were not touched.
This change adds contracts to those.

9 years agoMove CoreCLR to the modern build tools and dnx
Matt Mitchell [Mon, 6 Jul 2015 23:12:43 +0000 (16:12 -0700)]
Move CoreCLR to the modern build tools and dnx

This changes moves coreclr onto DNX (same version as corefx).  Theoretically, this should allow these tests to target the desktop CLR.  All of the old package.config files are gone and replaced with corresponding project.json files.  The up front restore behavior is retained.  Tests are now buildable individually, though not runnable in a similar fashion.

9 years agoSIMD Exceptions Fix (TFS 1189814)
Carol Eidt [Thu, 9 Jul 2015 21:55:24 +0000 (14:55 -0700)]
SIMD Exceptions Fix (TFS 1189814)

For the intrinsics that take arrays, we need to check the initial index (if given) to ensure that it is non-null.

[tfs-changeset: 1499422]

9 years agoFixing Databinding scenario for KeyValuePair. Refactoring the databinding code for...
Rama Krishnan Raghupathy [Thu, 9 Jul 2015 19:14:33 +0000 (12:14 -0700)]
Fixing Databinding scenario  for KeyValuePair. Refactoring the databinding code for CLRIReferenceImpl/CLRIReferenceArrayImpl/ICustomPropertyProviderProxy

[tfs-changeset: 1499363]

9 years agoMerge pull request #1215 from richardlford/rosfix
Jan Kotas [Thu, 9 Jul 2015 06:15:02 +0000 (23:15 -0700)]
Merge pull request #1215 from richardlford/rosfix

Modify conservative GC code for unaligned InlinedCallFrames

9 years agoModify conservative GC code for unaligned InlinedCallFrames
Richard L Ford [Wed, 8 Jul 2015 07:17:53 +0000 (00:17 -0700)]
Modify conservative GC code for unaligned InlinedCallFrames

When making pinvoke calls the JITs allocate InlinedCallFrames
within their stack frames to record the location
of the managed stack frame. These InlinedCallFrames are
not necessarily 8-byte aligned. These were being used
as the topStack in src/vm/gcenv.cpp, in the method
GCToEEInterface::ScanStackRoots.

This change checks to see if a frame is an InlinedCallFrame.
If so then its GetCallSiteSP method is used to
get the real top of stack. This will always be aligned.

There were two problem before this change wwhen the
frame was misaligned (e.g. ending with 4 or c):

1. GCToEEInterface::ScanStackRoots starts at the
topStack and look at every 8-byte chunk as if it were a
pointer. But if topStack is unaligned it is not really
finding the pointers on the stack.

2. When it gets to the bottom the 8-byte access
read the first 4 bytes ok, but the last 4 bytes
go beyond mapped addresses and an access violation
results.

9 years agoMerge pull request #1211 from mmitche/improve-build-tp
Matt Mitchell [Wed, 8 Jul 2015 22:16:26 +0000 (15:16 -0700)]
Merge pull request #1211 from mmitche/improve-build-tp

Improve the build throughput

9 years agoMerge pull request #1217 from mikem8361/fixassert
Mike McLaughlin [Wed, 8 Jul 2015 21:47:08 +0000 (14:47 -0700)]
Merge pull request #1217 from mikem8361/fixassert

Fix recursive asserts in coreclr.

9 years agoCR feedback.
Mike McLaughlin [Wed, 8 Jul 2015 18:22:09 +0000 (11:22 -0700)]
CR feedback.

9 years agoFix recursive asserts in coreclr.
Mike McLaughlin [Tue, 7 Jul 2015 22:14:15 +0000 (15:14 -0700)]
Fix recursive asserts in coreclr.

Remove assert in VM break handler to prevent recursive asserts. Fixed problem where the DebugBreak wasn't terminating the app on an assert causing double assert messages.  Restoring the SIGTRAP handler and returning was continuing the DebugBreak not terminating. Replaced this with an abort().

Cleanup the assert message formatting.

9 years agoAdd missing contracts to some destructors
Jan Vorlicek [Wed, 8 Jul 2015 09:55:54 +0000 (11:55 +0200)]
Add missing contracts to some destructors

This change adds missing contract annotation to several destructors that
were missing it.

9 years agoMerge pull request #1196 from justinvp/docs_corefxtests
Rich Lander [Wed, 8 Jul 2015 05:03:21 +0000 (22:03 -0700)]
Merge pull request #1196 from justinvp/docs_corefxtests

Fix markdown of the "Testing with CoreFX" documentation so it renders correctly on GitHub

9 years agoImprove the build throughput
Matt Mitchell [Tue, 7 Jul 2015 18:38:11 +0000 (11:38 -0700)]
Improve the build throughput

Especially with the builds of the tests, the diag logging significantly reduces TP in the build and seems to reduce parallelism a bit too.  Change this to normal.

9 years agoMerge pull request #1209 from swaroop-sridhar/unused
Jan Kotas [Tue, 7 Jul 2015 07:21:57 +0000 (00:21 -0700)]
Merge pull request #1209 from swaroop-sridhar/unused

Remove a few Unused Definitions

9 years agoMerge pull request #637 from justinvp/stringsplit
Stephen Toub [Tue, 7 Jul 2015 03:09:29 +0000 (23:09 -0400)]
Merge pull request #637 from justinvp/stringsplit

String.Split optimization

9 years agoRemove a few Unused Definitions
Swaroop Sridhar [Mon, 6 Jul 2015 22:36:58 +0000 (15:36 -0700)]
Remove a few Unused Definitions

Remove three unused local variable definitions --
which caused warnings in the LLILC build.

9 years agoMerge pull request #1124 from DickvdBrink/vs2015-doc-fix
Matt Mitchell [Mon, 6 Jul 2015 15:33:03 +0000 (08:33 -0700)]
Merge pull request #1124 from DickvdBrink/vs2015-doc-fix

Document Visual Studio 2015 support

9 years agoDocument Visual Studio 2015 support
Dick van den Brink [Sun, 5 Jul 2015 14:56:22 +0000 (07:56 -0700)]
Document Visual Studio 2015 support

9 years agoMerge pull request #1200 from erozenfeld/CrossgenFix
Jan Kotas [Fri, 3 Jul 2015 07:07:15 +0000 (00:07 -0700)]
Merge pull request #1200 from erozenfeld/CrossgenFix

Allow non-RIP-relative relocations in coreclr crossgen.

9 years agoMerge pull request #1202 from mj1856/docs
Stephen Toub [Fri, 3 Jul 2015 02:53:29 +0000 (22:53 -0400)]
Merge pull request #1202 from mj1856/docs

Fix broken link in documentation

9 years agoFix broken link
Matt Johnson [Thu, 2 Jul 2015 22:25:53 +0000 (15:25 -0700)]
Fix broken link

9 years agoAllow non-RIP-relative relocations in coreclr crossgen.
Eugene Rozenfeld [Thu, 2 Jul 2015 19:45:04 +0000 (12:45 -0700)]
Allow non-RIP-relative relocations in coreclr crossgen.

9 years agoMerge pull request #1195 from mikem8361/dactable
Mike McLaughlin [Thu, 2 Jul 2015 18:23:18 +0000 (11:23 -0700)]
Merge pull request #1195 from mikem8361/dactable

Generate the dac table RVA using nm at build time.

9 years agoFix markdown so it renders correctly on GitHub
Justin Van Patten [Thu, 2 Jul 2015 04:13:06 +0000 (21:13 -0700)]
Fix markdown so it renders correctly on GitHub

9 years agoFix Windows build.
Mike McLaughlin [Thu, 2 Jul 2015 02:02:25 +0000 (19:02 -0700)]
Fix Windows build.

9 years agoMerge pull request #1194 from ellismg/intern-jit-packages-files
Matt Ellis [Thu, 2 Jul 2015 01:03:40 +0000 (18:03 -0700)]
Merge pull request #1194 from ellismg/intern-jit-packages-files

Speed up package resotre of JIT Test build

9 years agoGenerate the dac table RVA using nm at build time.
Mike McLaughlin [Tue, 23 Jun 2015 00:47:46 +0000 (17:47 -0700)]
Generate the dac table RVA using nm at build time.

Remove the temporary PAL dac table file at runtime. Replaced it with dactablerva.h file generated at build time from the libcoreclr module. nm works across Linux, OSx and FreeBSD.

9 years agoMerge pull request #1189 from MarcelGosselin/master
Stephen Toub [Wed, 1 Jul 2015 13:13:20 +0000 (09:13 -0400)]
Merge pull request #1189 from MarcelGosselin/master

Fix broken Developer Guide documentation links

9 years agoFix broken Developer Guide documentation links
Marcel Gosselin [Wed, 1 Jul 2015 07:18:52 +0000 (03:18 -0400)]
Fix broken Developer Guide documentation links

9 years agoString.Split optimization
Justin Van Patten [Fri, 3 Apr 2015 19:19:11 +0000 (12:19 -0700)]
String.Split optimization

- Use EmptyArray<String>.Value instead of new String[0] on .NET Core
- Return early before allocating internal array(s) when count == 1

9 years agoSpeed up package resotre of JIT Test build
Matt Ellis [Tue, 30 Jun 2015 21:11:27 +0000 (14:11 -0700)]
Speed up package resotre of JIT Test build

We spend a fair amount of time (six wall clock minutes on my machine)
doing package restore for the JIT tests. This is because each project
has its own packages.config file, so during the build we call nuget
restore for each project.

There are only four unique packages.config files for all these tests, so
this change moves them to tests/src/JIT/config and updates the project
files to consume them from there.

This means during the build the `EnsureDependencies` target does not
need to invoke nuget restore as often and the build is much faster as a
result.

9 years agoMerge pull request #1188 from dotnet-bot/from-tfs
Stephen Toub [Tue, 30 Jun 2015 18:25:06 +0000 (14:25 -0400)]
Merge pull request #1188 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoReplace COMPLUS_SOCExtraSpew with COMPLUS_JitFunctionTrace, and enable it for all...
Bruce Forstall [Tue, 30 Jun 2015 00:40:22 +0000 (17:40 -0700)]
Replace COMPLUS_SOCExtraSpew with COMPLUS_JitFunctionTrace, and enable it for all architectures in RyuJIT

[tfs-changeset: 1495487]

9 years agoMerge pull request #1185 from bartonjs/x509chain
Jeremy Barton [Mon, 29 Jun 2015 20:24:20 +0000 (13:24 -0700)]
Merge pull request #1185 from bartonjs/x509chain

Add wrapper functions for building X509Chains

9 years agoMerge pull request #1180 from dotnet-bot/from-tfs
Matt Ellis [Sat, 27 Jun 2015 22:04:59 +0000 (15:04 -0700)]
Merge pull request #1180 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoMerge pull request #1179 from dotnet-bot/from-tfs
Matt Ellis [Sat, 27 Jun 2015 06:15:56 +0000 (23:15 -0700)]
Merge pull request #1179 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoAdd missing include directory
Matt Ellis [Sat, 27 Jun 2015 04:29:33 +0000 (21:29 -0700)]
Add missing include directory

dbgshim.cpp wants to include debugshim.h but the directory that holds
this file was not on the include path when buidling with cmake.  Adding
this directory in line with what we had for the razzle driven internal
TFS build.

9 years agoFix arm/arm64 builds of dbgshim
Eugene Zemtsov [Sat, 27 Jun 2015 04:28:59 +0000 (21:28 -0700)]
Fix arm/arm64 builds of dbgshim

[tfs-changeset: 1494755]

9 years agoMake 64bit dump debugging possible on CoreCLR
Eugene Zemtsov [Sat, 27 Jun 2015 02:12:19 +0000 (19:12 -0700)]
Make 64bit dump debugging possible on CoreCLR

[tfs-changeset: 1494731]

9 years agoMerge pull request #1175 from mikem8361/palinit2
Mike McLaughlin [Thu, 25 Jun 2015 22:28:06 +0000 (15:28 -0700)]
Merge pull request #1175 from mikem8361/palinit2

Some more pal init cleanup missed in #1174

9 years agoSome more pal init cleanup missed in #1174
Mike McLaughlin [Thu, 25 Jun 2015 21:34:08 +0000 (14:34 -0700)]
Some more pal init cleanup missed in #1174

9 years agoMerge pull request #1174 from mikem8361/palinit
Jan Vorlicek [Thu, 25 Jun 2015 20:51:16 +0000 (22:51 +0200)]
Merge pull request #1174 from mikem8361/palinit

Fixed the PAL_Initialize* order problem.

9 years agoCR feedback from @janvorli
Mike McLaughlin [Thu, 25 Jun 2015 19:18:23 +0000 (12:18 -0700)]
CR feedback from @janvorli

9 years agoFixed the PAL_Initialize* order problem.
Mike McLaughlin [Sat, 20 Jun 2015 00:37:48 +0000 (17:37 -0700)]
Fixed the PAL_Initialize* order problem.

Now it doesn't matter if PAL_InitializeDLL (which doesn't pass argc/argv) is called before PAL_InitializeCoreCLR or vice-versa.  The exe path and command line are updated for every PAL_Initialize or PAL_InitializeCoreCLR call.

Cleaned up the pal_module initialization to get and set the module name removing the need for PAL_InitializeCoreCLR to pass the coreclr path. This required changing the process attach DllInit to be done more on demand.

The signature for PAL_InitializeCoreCLR has changed to (two parameters removed):

PALIMPORT
DWORD
PALAPI
PAL_InitializeCoreCLR(
    const char *szExePath);

Fixed a problem in the ClrStack -i command where the SP/PC displayed wasn't correctly.

9 years agoMerge pull request #1169 from pgavlin/splittests
Matt Mitchell [Wed, 24 Jun 2015 17:58:14 +0000 (10:58 -0700)]
Merge pull request #1169 from pgavlin/splittests

Refactor JIT test projects.

9 years agoRefactor JIT test projects.
Pat Gavlin [Tue, 23 Jun 2015 17:37:02 +0000 (10:37 -0700)]
Refactor JIT test projects.

This change replaces the template projects used for the ported JIT tests
with a single project file per test. This refactoring is intended to
clarify exactly which tests from the legacy testbed have been ported
and what their dependencies are; this should make later reasoning about
these tests more straightforward.

This change also disables a number of innocuous warnings in the ported
tests for hygenic purposes.

9 years agoAdd support for setting verification time and querying the root store directory
bartonjs [Wed, 24 Jun 2015 15:03:00 +0000 (08:03 -0700)]
Add support for setting verification time and querying the root store directory

9 years agoMerge pull request #1159 from mikem8361/bpmd
Mike McLaughlin [Tue, 23 Jun 2015 21:40:38 +0000 (14:40 -0700)]
Merge pull request #1159 from mikem8361/bpmd

Enable bpmd command (even unjitted functions work)

9 years agoAdd methods for interacting with STACK_OF(X509)
Jeremy Barton [Mon, 22 Jun 2015 16:11:49 +0000 (09:11 -0700)]
Add methods for interacting with STACK_OF(X509)

9 years agoMerge pull request #1156 from romansp/fix-typos
Jan Kotas [Sat, 20 Jun 2015 00:40:14 +0000 (17:40 -0700)]
Merge pull request #1156 from romansp/fix-typos

fix typo in objectnative.cpp comments

9 years agoEnable bpmd command even unjitted functions work.
Mike McLaughlin [Wed, 17 Jun 2015 00:43:04 +0000 (17:43 -0700)]
Enable bpmd command even unjitted functions work.

Preallocate JIT notification table on VM side (since ICLRDataTarget2->AllocVirtual isn't implemented under lldb) and implement WriteVirtual on debugger side to allow DAC to write entries.

Used the special set breakpoint on exception throw lldb command to catch the special exception the VM throws when some
thing is jitted. The debugger side finds the exception record by searching for the RtlpRaiseException function on the stack
when the bp is hit. It also assumes that the local variable is called ExceptionRecord.

Fix all the file path separators to use the platform independent defines.

Ifdef all the "/d" options in the supported commands because the / char isn't supported as a command line option and /d is always the DML option that isn't supported either.

Fix problem Prem run into running sos after the process stops.

9 years agoMerge pull request #1136 from josteink/unwind-freebsd
Jan Vorlicek [Thu, 18 Jun 2015 21:37:16 +0000 (23:37 +0200)]
Merge pull request #1136 from josteink/unwind-freebsd

Fix stack unwinding for FreeBSD.

9 years agoFix stack unwinding for FreeBSD.
Jostein Kjønigsen [Mon, 15 Jun 2015 06:17:01 +0000 (08:17 +0200)]
Fix stack unwinding for FreeBSD.

Fix error in stack unwinding on FreeBSD as discovered by @saper.

This closes #1102 and #1113

9 years agofixed typo in objectnative.cpp comments
Roman Pavlov [Thu, 18 Jun 2015 14:24:59 +0000 (17:24 +0300)]
fixed typo in objectnative.cpp comments

9 years agoMerge pull request #1153 from mikem8361/ctrlc
Mike McLaughlin [Thu, 18 Jun 2015 00:48:37 +0000 (17:48 -0700)]
Merge pull request #1153 from mikem8361/ctrlc

Allow CTRLC to work when running under lldb using the SOS plugin

9 years agoAllow CTRLC to work when running under lldb using the SOS plugin and debugger dlls
Mike McLaughlin [Wed, 17 Jun 2015 01:26:11 +0000 (18:26 -0700)]
Allow CTRLC to work when running under lldb using the SOS plugin and debugger dlls
by only setting the SIGINT/SIGQUIT handlers if the signal handler thread is started.

9 years agoMerge pull request #1107 from krk/master
Andy Ayers [Wed, 17 Jun 2015 19:48:04 +0000 (12:48 -0700)]
Merge pull request #1107 from krk/master

ObjectDisposedException handled in test wrapper.

9 years agoMerge pull request #1141 from mikem8361/dbgshim
Mike McLaughlin [Wed, 17 Jun 2015 00:43:44 +0000 (17:43 -0700)]
Merge pull request #1141 from mikem8361/dbgshim

Fully implement dbgshim so it doesn't depend on LD_LIBRARY_PATH (issue #650)

9 years agoMerge pull request #1149 from rehrumesh/Fix_1148
Jan Kotas [Tue, 16 Jun 2015 23:25:17 +0000 (16:25 -0700)]
Merge pull request #1149 from rehrumesh/Fix_1148

Fixed #1148. Corrected links for Instructions

9 years agoMerge pull request #1143 from jkotas/GetAssemblyName
Jan Kotas [Tue, 16 Jun 2015 23:23:13 +0000 (16:23 -0700)]
Merge pull request #1143 from jkotas/GetAssemblyName

Allow AssemblyLoadContext.GetAssemblyName for native images on CoreCLR

9 years agoFixed FreeBSD build.
Mike McLaughlin [Tue, 16 Jun 2015 20:52:07 +0000 (13:52 -0700)]
Fixed FreeBSD build.

9 years agoCode review feedback.
Mike McLaughlin [Tue, 16 Jun 2015 17:49:54 +0000 (10:49 -0700)]
Code review feedback.

9 years agoCorrected links for Instructions
Rumesh Eranga [Tue, 16 Jun 2015 17:36:51 +0000 (23:06 +0530)]
Corrected links for Instructions

9 years agoMerge pull request #1142 from dotnet-bot/from-tfs
Jan Kotas [Tue, 16 Jun 2015 03:05:29 +0000 (20:05 -0700)]
Merge pull request #1142 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoAllow AssemblyLoadContext.GetAssemblyName for native images on CoreCLR
Jan Kotas [Tue, 16 Jun 2015 03:03:00 +0000 (20:03 -0700)]
Allow AssemblyLoadContext.GetAssemblyName for native images on CoreCLR

9 years agoMake sure dbgshim can attach to processes from other sessions
Eugene Zemtsov [Tue, 16 Jun 2015 00:03:23 +0000 (17:03 -0700)]
Make sure dbgshim can attach to processes from other sessions

[tfs-changeset: 1488695]

9 years agoFully implement dbgshim so it doesn't depend on LD_LIBRARY_PATH (issue #650).
Mike McLaughlin [Wed, 10 Jun 2015 23:54:02 +0000 (16:54 -0700)]
Fully implement dbgshim so it doesn't depend on LD_LIBRARY_PATH (issue #650).

It finds and uses the path coreclr is in to load dbi/dac.

EnumProcessModules returns an array of module base addresses and GetModuleFileNameEx
takes the base address and returns the module name string.

Fixed directory separator in dbgshim.

9 years agoMerge pull request #1140 from dotnet/blackdwarf-patch-1
Rich Lander [Mon, 15 Jun 2015 17:43:47 +0000 (10:43 -0700)]
Merge pull request #1140 from dotnet/blackdwarf-patch-1

Fix the ECMA standard link

9 years agoFix the ECMA standard link
Zlatko Knezevic [Mon, 15 Jun 2015 17:12:29 +0000 (10:12 -0700)]
Fix the ECMA standard link

On README.md, the intro to .NET Core had a wrong link.
Missing the directory portion.

9 years agoMerge pull request #1134 from tvlooy/patch-2
Stephen Toub [Sat, 13 Jun 2015 11:49:24 +0000 (07:49 -0400)]
Merge pull request #1134 from tvlooy/patch-2

Fix typo

9 years agoFix typo
Tom Van Looy [Sat, 13 Jun 2015 06:13:09 +0000 (08:13 +0200)]
Fix typo

9 years agoMerge pull request #1130 from pgavlin/ILTests
Pat Gavlin [Thu, 11 Jun 2015 15:56:46 +0000 (08:56 -0700)]
Merge pull request #1130 from pgavlin/ILTests

Import the first batch of IL tests.

9 years agoMerge pull request #1129 from dotnet-bot/from-tfs
Jan Kotas [Thu, 11 Jun 2015 11:07:32 +0000 (04:07 -0700)]
Merge pull request #1129 from dotnet-bot/from-tfs

Merge changes from TFS

9 years agoMerge pull request #1125 from mikem8361/removelibpath
Mike McLaughlin [Thu, 11 Jun 2015 07:35:01 +0000 (00:35 -0700)]
Merge pull request #1125 from mikem8361/removelibpath

Remove the dependency on LD_LIBRARY_PATH in the sos code (issue #820)

9 years agoImport the first batch of IL tests.
Pat Gavlin [Wed, 10 Jun 2015 20:11:59 +0000 (13:11 -0700)]
Import the first batch of IL tests.

This set of tests is comprised of IL tests that:
- only reference APIs in .Net Core's System.Runtime,
  System.Runtime.Extensions, and System.Threading contracts
- compile to a single executable,
- and expect no command line arguments at runtime.

9 years agoMerge pull request #1120 from libengu/RestOfRegression
Bengu Li [Wed, 10 Jun 2015 22:57:12 +0000 (15:57 -0700)]
Merge pull request #1120 from libengu/RestOfRegression

Add all remaining JIT/Regression test cases for JIT

9 years agoFix Exception Propagation issue for NetCoreForCoreCLR Non-AppX case
Luqun Lou [Wed, 10 Jun 2015 22:53:48 +0000 (15:53 -0700)]
Fix Exception Propagation issue for NetCoreForCoreCLR Non-AppX case

Currently in CoreCLR, We don't propagate managed exception from Managed->Native->Managed correctly for non-appx case--- if you throw a managed exception, then during M->N, the managed exception is stored in thread, later during N->M, we will try to fetch this stored exception if it is managed exception by checking IsManagedObject()

The logical for IsManagedObject should be just check its IUnknown slots first no matter whether it is appx or not; If doesn't match, try to QI IManagedObject.

[tfs-changeset: 1486094]

9 years agoMerge pull request #1114 from dotnet/docs-subfolders
Zlatko Knezevic [Wed, 10 Jun 2015 18:00:37 +0000 (11:00 -0700)]
Merge pull request #1114 from dotnet/docs-subfolders

Add subfolders to Documentation folder

9 years agoFixing for comments in #1114
Zlatko Knezevic [Wed, 10 Jun 2015 14:43:33 +0000 (07:43 -0700)]
Fixing for comments in #1114

9 years agoAdd subfolders to Documentation folder
Zlatko Knezevic [Sun, 7 Jun 2015 03:29:39 +0000 (20:29 -0700)]
Add subfolders to Documentation folder

As raised in #1075 by @akoeplinger, the Documentation folder's file
list forces the user to scroll way down to see the README.md. This
PR fixes that by storing the documents in separate sub-folders one
per hierarchy of related documents. Also changed
Documentation\README.md and root README.md to take into account
the new paths.

9 years agoMerge pull request #1127 from ronyb29/master
Jan Kotas [Wed, 10 Jun 2015 15:05:36 +0000 (08:05 -0700)]
Merge pull request #1127 from ronyb29/master

fixed typo in BufferedStream comments

9 years agoMerge pull request #1126 from stephentoub/reflectionemit_writeline
Jan Kotas [Wed, 10 Jun 2015 15:04:54 +0000 (08:04 -0700)]
Merge pull request #1126 from stephentoub/reflectionemit_writeline

Implement ILGenerator on Unix to use System.Console.dll