Jan Vorlicek [Fri, 15 Jan 2016 09:23:09 +0000 (10:23 +0100)]
Merge pull request #2660 from janvorli/stack-limit-changes
Improve stack limit checking precision
Sergiy Kuryata [Fri, 15 Jan 2016 05:29:15 +0000 (21:29 -0800)]
Merge pull request #2661 from sergiy-k/pie
Enable the fPIE compiler option for executables in the coreclr repo on Unix platforms
Mike McLaughlin [Fri, 15 Jan 2016 03:08:05 +0000 (19:08 -0800)]
Merge pull request #2633 from mikem8361/launch
Add debugger launch to dbgshim for xplat.
Mike McLaughlin [Wed, 16 Dec 2015 00:42:20 +0000 (16:42 -0800)]
Add debugger launch to dbgshim for xplat.
Add the RegisterForRuntimeStartup/UnregisterForRuntimeStartup to dbghim. Executes
the callback when the coreclr runtime starts in the specified process. The callback
is passed the proper ICorDebug instance for the version of the runtime or an error if
something fails. This API works for launch and attach (and even the attach scenario
if the runtime hasn't been loaded yet) equally on both xplat and Windows. The callback
is always called on a separate thread. This API returns immediately.
The callback is invoke when the coreclr runtime module is loaded during early
initialization. The runtime is blocked during initialization until the callback
returns.
HRESULT
RegisterForRuntimeStartup(
__in DWORD dwProcessId,
__in PSTARTUP_CALLBACK pfnCallback,
__in PVOID parameter,
__out PVOID *ppUnregisterToken)
HRESULT
UnregisterForRuntimeStartup(
__in PVOID pUnregisterToken)
Most of the work is done for xplat in the PAL_RegisterForRuntimeStartup and
PAL_UnregisterForRuntimeStartup. On Windows, the APIs are implemented on top
of the old dbgshim ones.
Added reference counting to DbgTransportSession so the cleanup can be done after
the transport worker and the main code is finished.
Fix a hang in OSX initializing multiple PALs in the debugging test dbg, dbgshim
and mscordaccore by not calling FILEInitStdHandles() from PAL_InitializeDLL.
Fixed a minor EnumerateCLRs bug in an error path. A ThrowHR instead of returning
the HRESULT.
Better pipe file/dbg transport cleanup. Now also call the dbg transport connection
abort for an unhandled native exception. Added PROCAbort to replace most calls to
abort(). The shutdown handler is called in PROCAbort().
Cleanup debugger transport pipes on CTRL-C termination.
Cleanup process code; remove now useless CProcSharedData.
Added "PROCESS" PAL trace type.
Stephen Toub [Fri, 15 Jan 2016 01:59:15 +0000 (20:59 -0500)]
Merge pull request #2630 from ellismg/fast-path-index-of
Fast path IndexOf and variants for ASCII
Jan Vorlicek [Fri, 15 Jan 2016 01:49:39 +0000 (02:49 +0100)]
Merge pull request #2665 from janvorli/fix-pal-test-time-measurement
Make time measurement in PAL threading tests more precise
Jan Kotas [Fri, 15 Jan 2016 01:36:06 +0000 (17:36 -0800)]
Merge pull request #2659 from dotnet-bot/from-tfs
Merge changes from TFS
Sivarv [Fri, 15 Jan 2016 00:36:12 +0000 (16:36 -0800)]
Merge pull request #2648 from sivarv/founddiff2
Fix to issue #2349 - Assertion failed '!foundDiff' in 'Node[__Canon][System.__Canon]:Search(ref,ref):ref:this' in lsra.cpp
Aditya Mandaleeka [Fri, 15 Jan 2016 00:34:32 +0000 (16:34 -0800)]
Merge pull request #2664 from adityamandaleeka/enable_hw_excep_pal
Add hardware exception handling back to Read/WriteProcessMemory
Brian Sullivan [Thu, 14 Jan 2016 23:00:48 +0000 (15:00 -0800)]
Merge pull request #2657 from briansull/fix-legacy
Fix the legacy frankenjit test execution failures
Nate Amundson [Thu, 14 Jan 2016 22:45:50 +0000 (16:45 -0600)]
Merge pull request #2566 from dotnet/UpdateDocDebian
Update Linux instructions for Debian
Jan Vorlicek [Thu, 14 Jan 2016 19:45:58 +0000 (20:45 +0100)]
Improve stack limit checking precision
This change improves the precision of checking whether an address is in stack limits
for cases where ulimit -s is set to unlimited and the stack limit is checked for the
current thread. It uses current SP instead of the cached stack limit, since the OS
is free to move the stack limit up during the process runtime and the cached value
reflects the initial stack limit.
Jan Vorlicek [Thu, 14 Jan 2016 21:57:01 +0000 (22:57 +0100)]
Make time measurement in PAL threading tests more precise
This change replaces GetTickCount by measurement using QueryPerformanceCounter.
This is an attempt to fix stability of bunch of threading tests that were
failing randomly due to large error margin of the GetTickCount on Debian.
Matt Mitchell [Thu, 14 Jan 2016 21:47:38 +0000 (13:47 -0800)]
Merge pull request #2564 from mmitche/add-ildasm-roundtrip
Add ildasm roundtrip
Matt Mitchell [Thu, 7 Jan 2016 19:01:12 +0000 (11:01 -0800)]
Add ILAsm roundtrip testing
Refactor pri1 and default testing into scenarios
Brian Sullivan [Wed, 13 Jan 2016 23:21:54 +0000 (15:21 -0800)]
Fix the frankenjit test execution failures
The frankenjit is the new RyuJit frontend minus the rationalize phase and the legacy x86 backend.
It is still used internally for testing purposed and it was broken with the recent cleanup of liveness.
This change pust back the old method that handled GT_QMARK nodes. It is renamed to
fgLegacyPerStatementLocalVarLiveness and it is moved into codegenlegacy.cpp.
Aditya Mandaleeka [Thu, 14 Jan 2016 20:38:45 +0000 (12:38 -0800)]
Add hardware exception handling back to Read/WriteProcessMemory
Sergiy Kuryata [Thu, 14 Jan 2016 20:40:37 +0000 (12:40 -0800)]
Enable the fPIE compiler option for executables in the coreclr repo on Unix platforms
Brian Sullivan [Thu, 14 Jan 2016 19:27:36 +0000 (11:27 -0800)]
Fix x86chk build break:
ndp\clr\src\debug\ee\debugger.h(1117): error C2220: warning treated as error - no 'object' file generated
ndp\clr\src\debug\ee\debugger.h(1117): warning C4324: 'DebuggerHeapExecutableMemoryChunk' : structure was padded due to __declspec(align())
[tfs-changeset: 1565087]
sivarv [Thu, 14 Jan 2016 00:20:39 +0000 (16:20 -0800)]
For the repro case the method being compiled is a generic method
whose generic context is derived from thisptr. For this reason JIT
is asked to keep thisptr alive and report in gc-info. For such
methods JIT, caches thisptr to a stack slot in prolog and that
stack slot gets reported in gc-info.
Due to tail call loop optimization, the recursive method call at the end
is converted into a loop. This transformation assigns all the arguments
to temps and temps back to incoming parameters of the method and finally
branches to the first basic block (see fgMorphRecursiveFastTailCallIntoLoop()).
This will leads to the following basic block
tmp = GT_INDIR(thisptr+24)
thisptr = tmp
That is thisptr is changing while looping. But the thisptr stores in
cached stack slot is not updated. So potentially there is a mismatch
in generic context reported in gc-info to VM and the one used within
the method body.
The same issue exists in case of methods that have generic context
passed in a hidden argument instead of derived from thisptr.
Fix:
For now disabling tail call loop optimization for methods that need generic
context till we the above mentioned issue.
Pat Gavlin [Thu, 14 Jan 2016 17:53:47 +0000 (09:53 -0800)]
Merge pull request #2621 from pgavlin/ConfigureOnly
Add configureonly and skipconfigure to builds.
Sean Gillespie [Thu, 14 Jan 2016 08:44:18 +0000 (00:44 -0800)]
Merge pull request #2649 from swgillespie/gc_flavor_select
corerun: Enable Server GC and Concurrent GC to be configured with environment variables
Jan Kotas [Thu, 14 Jan 2016 06:27:03 +0000 (22:27 -0800)]
Merge pull request #2640 from janvorli/fix-stack-overflow
Fix Unix stack overflow detection
Sergiy Kuryata [Thu, 14 Jan 2016 05:33:24 +0000 (21:33 -0800)]
Merge pull request #2616 from sergiy-k/stackprotector
Enable the stack-protector compiler option for all coreclr code on Unix.
Stephen Toub [Thu, 14 Jan 2016 05:09:00 +0000 (00:09 -0500)]
Merge pull request #2646 from stephentoub/list_exceptionnames
Fix incorrect ArgumentException names in List<T>
Sean Gillespie [Thu, 14 Jan 2016 02:09:44 +0000 (18:09 -0800)]
Enable corerun to select server GC or concurrent GC on startup based on environment variables
Stephen Toub [Thu, 14 Jan 2016 02:32:01 +0000 (21:32 -0500)]
Merge pull request #2642 from stephentoub/aggexc_message
Override AggregateException.Message to include more detail
Jan Kotas [Thu, 14 Jan 2016 02:27:23 +0000 (18:27 -0800)]
Merge pull request #2647 from dotnet-bot/from-tfs
Merge changes from TFS
Sergiy Kuryata [Thu, 14 Jan 2016 01:27:24 +0000 (17:27 -0800)]
Use "-fstack-protector" instead of "-fstack-protector-strong" on OS X in order to work around a bug in clang (current version 7.0.2).
Jan Vorlicek [Wed, 13 Jan 2016 16:56:29 +0000 (17:56 +0100)]
Fix Unix stack overflow detection
On Linux (and FreeBSD), we were not distinguishing a stack overflow detected
using a probe and general access violation. So instead of aborting the process,
we were sending it a managed access violation exception.
This change checks for the case when the access violation happens in the page
below the stack limit and aborts right in the sigsegv_handler if it does.
On OSX, we were detecting it, but there was a problem in it - it could only
detect it if the probed address was closer than 512kB to the current SP.
So e.g. an application failing due to allocating 1MB structure on stack didn't
pass this test.
The fix here was to remove the distance limit.
Aditya Mandaleeka [Thu, 14 Jan 2016 00:05:45 +0000 (16:05 -0800)]
Merge pull request #2264 from adityamandaleeka/dbg_exec_alloc
[WIP] Fix usage of executable heap memory
Jan Kotas [Wed, 13 Jan 2016 23:56:23 +0000 (15:56 -0800)]
Merge pull request #2637 from bbowyersmyth/StringExceptionParamName
Provide paramName for ArgumentNull and ArgumentOutOfRange for String
Rahul Kumar [Wed, 13 Jan 2016 23:34:21 +0000 (15:34 -0800)]
coreclr BuildTools for github builds - instead of building the tools (which do not change) create a nuget package
This contains changes for following:
1. Binplace & sign following binaries
a. pdbtypematch.exe (only build in x86 ret .... build errors for other flavors)
b. dactableGen.exe
c. dialib.dll
d. GenClrDebugResource.exe
e. InjectResource.exe
2. add sources of PdbTypeMatch tools in github
3. bump up the version of coreclr buildtools package to 1.0.4
4. add above tools to coreclr buildtools package
5. remove bclrewriter from coreclr buildtools package
6. build dotnet.builtools.coreclr package only for x86 ret builds as pdbtypematch.exe only builds for ret flavor.
[tfs-changeset: 1564332]
Pat Gavlin [Tue, 12 Jan 2016 19:25:27 +0000 (11:25 -0800)]
Add configureonly and skipconfigure to builds.
These options allow the developer to either:
1. Run build configuration without actually running the build, or
2. Skip build configuration when running the build.
CMake already adds the various CMakeLists.txt files as build
dependencies s.t. it will be automatically re-run when necessary.
stephentoub [Wed, 13 Jan 2016 23:29:39 +0000 (18:29 -0500)]
Fix incorrect ArgumentException names in List<T>
Stephen Toub [Wed, 13 Jan 2016 23:15:58 +0000 (18:15 -0500)]
Merge pull request #2641 from eerhardt/FixIdn
IdnMapping GetUnicode conformance tests fail
stephentoub [Wed, 13 Jan 2016 18:37:47 +0000 (13:37 -0500)]
Override AggregateException.Message to include more detail
ToString() includes details on inner exceptions, but Message does not, with the default message just saying "One or more errors occurred." This commit overrides Message to append the messages of the inner exceptions as well.
Andy Ayers [Wed, 13 Jan 2016 21:39:49 +0000 (13:39 -0800)]
Merge pull request #2622 from AndyAyersMS/MiscBenchmarks
Add miscellaneous benchmarks
Matt Ellis [Wed, 13 Jan 2016 01:01:02 +0000 (17:01 -0800)]
Fast path IndexOf and variants for ASCII
In ICU doing any sort of index of operation (which includes Prefix and
Suffix checking) is relatively expensive. ICU ends up doing a fair
amount of work and allocations in order to construct a searcher object
which could be reused, but our APIs are not amenable towards working in
this manner.
However, for some cultures we can often fast path ASCII searches when we
know that ASCII and Ordinal comparisions are the same, as is the case
for both Invariant and en-US.
This change has CompareInfo hold some additional state about a locale to
decide if we can do this optimiztion and then wires it up to IndexOf,
LastIndexOf, IsPrefix and IsSuffix.
In the future, we can try to extend the set of allowable cultures that
we preform this optimization on by coming up with better checks on when
it is safe to preform this transformation.
Today, this optimization does not apply when IgnoreSymbols is set,
because we would need to blank some ASCII symbol characters. If this
ends up being a common operation, we could consider having ordinal
implementations that also ignore symbols.
This represents the best that we can do for dotnet/corefx#3672. It gets
us back to where we were before for many common real world cases.
Fixes dotnet/corefx#3672.
Bruce Bowyer-Smyth [Wed, 13 Jan 2016 20:57:50 +0000 (06:57 +1000)]
Provide paramName for ArgumentNull and ArgumentOutOfRange
Aditya Mandaleeka [Wed, 13 Jan 2016 20:02:02 +0000 (12:02 -0800)]
Merge pull request #2631 from adityamandaleeka/floatingPointCxtFix
Fix usage of floating point state from native contexts.
Jan Kotas [Wed, 13 Jan 2016 17:43:52 +0000 (09:43 -0800)]
Merge pull request #2599 from mikedn/baddef
Fix bad JIT #ifdefs
Jan Kotas [Wed, 13 Jan 2016 17:36:00 +0000 (09:36 -0800)]
Merge pull request #2636 from bbowyersmyth/FixedString
Port https://github.com/dotnet/corert/pull/629 to CoreCLR
Jan Kotas [Wed, 13 Jan 2016 17:29:47 +0000 (09:29 -0800)]
Merge pull request #2635 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Wed, 13 Jan 2016 17:29:36 +0000 (09:29 -0800)]
Merge pull request #2639 from dotnet/revert-2624-founddiff
Revert "Fix to github issue #2349."
Eric Erhardt [Wed, 13 Jan 2016 17:05:11 +0000 (11:05 -0600)]
IdnMapping GetUnicode conformance tests fail
The IdnaConformanceTests fail on Unix because \u00DF, \u200C and \u200D characters are not being handled as specified in the http://www.unicode.org/Public/idna/6.0.0/IdnaTest.txt file.
The fix is to use UIDNA_NONTRANSITIONAL_TO_UNICODE and UIDNA_CHECK_CONTEXTJ options when calling uidna_openUTS46.
Partial fix for https://github.com/dotnet/corefx/issues/3406.
Jan Kotas [Wed, 13 Jan 2016 15:26:52 +0000 (07:26 -0800)]
Revert "Fix to github issue #2349."
Bruce Bowyer-Smyth [Wed, 13 Jan 2016 06:12:09 +0000 (16:12 +1000)]
Use m_firstChar instead of string object in fixed statement
Sean Gillespie [Wed, 13 Jan 2016 05:46:06 +0000 (21:46 -0800)]
Merge pull request #2625 from swgillespie/volatile_gc_perf_tests
Remove volatile GC perf tests from the main perf run
Sivarv [Wed, 13 Jan 2016 05:15:47 +0000 (21:15 -0800)]
Merge pull request #2624 from sivarv/founddiff
Fix to github issue #2349.
Gaurav Khanna [Wed, 13 Jan 2016 05:10:11 +0000 (21:10 -0800)]
Fix arm specific build break pertaining to AssemblyLoadContext changes.
[tfs-changeset: 1564035]
Hongtao Yu [Wed, 13 Jan 2016 04:39:38 +0000 (20:39 -0800)]
Merge pull request #2612 from hoyMS/Bug2610
Fix for bug 2610 Incorrect copy prop substitution.
Bruce Forstall [Wed, 13 Jan 2016 04:37:04 +0000 (20:37 -0800)]
Merge pull request #2623 from BruceForstall/BuildShChanges
Clean up build.sh
Aditya Mandaleeka [Wed, 13 Jan 2016 04:30:27 +0000 (20:30 -0800)]
Merge pull request #2629 from adityamandaleeka/mscorrcFpic
Add fPIC option when compiling mscorrc.
Lubomir Litchev [Wed, 13 Jan 2016 04:23:37 +0000 (20:23 -0800)]
Merge pull request #2602 from LLITCHEV/Issue2295
Fix issue 2295.
Senthil [Wed, 13 Jan 2016 02:35:34 +0000 (18:35 -0800)]
Merge pull request #2627 from RussKeldorph/dowhilebndchk
Do loop cloning only if zero trip test can be ensured
Brian Sullivan [Wed, 13 Jan 2016 02:26:54 +0000 (18:26 -0800)]
Merge pull request #2626 from briansull/cleanup-liveness
Cleanup code in fgPerStatementLiveness and fgPerBlockLocalVarLiveness
Andy Ayers [Wed, 13 Jan 2016 01:14:54 +0000 (17:14 -0800)]
Merge pull request #2581 from AndyAyersMS/BenchmarkGame
Add a subset of benchmark game benchmarks
Andy Ayers [Wed, 13 Jan 2016 01:13:25 +0000 (17:13 -0800)]
Merge pull request #2571 from AndyAyersMS/PerfTestsZ
Add more integer benchmarks
Hongtao Yu [Mon, 11 Jan 2016 23:24:49 +0000 (15:24 -0800)]
Fix for bug 2610 Incorrect copy prop substitution.
The bug is due to missing lvAddrExposed flag for tmp vars serving as pass-by-ref arguments.
Aditya Mandaleeka [Wed, 13 Jan 2016 00:50:45 +0000 (16:50 -0800)]
Fix usage of floating point state from native contexts.
Jan Kotas [Wed, 13 Jan 2016 00:45:56 +0000 (16:45 -0800)]
Merge pull request #2617 from stephentoub/datetime_allocation
Remove StringBuilder allocation/usage from DateTimeFormat
Andy Ayers [Tue, 12 Jan 2016 23:49:40 +0000 (15:49 -0800)]
Reduce Burgers iteration to avoid debug timeout
Lubomir Litchev [Sun, 10 Jan 2016 23:11:09 +0000 (15:11 -0800)]
Fix issue 2295.
Closes #2295. When creating shadow variables, copy the lvDontPromote flag
from the shadowed variable.
Aditya Mandaleeka [Tue, 12 Jan 2016 23:35:40 +0000 (15:35 -0800)]
Add fPIC option when compiling mscorrc.
Brian Sullivan [Tue, 12 Jan 2016 23:30:53 +0000 (15:30 -0800)]
Cleanup code in fgPerStatementLiveness and fgPerBlockLocalVarLiveness
Removed the <BUGNUM> comment about GT_QMARK that preceded the fgPerStatementLiveness method.
Added method header comment for fgPerStatementLiveness.
Changed return type of fgPerStatementLiveness to void.
Renamed the lhsNode argument to asgnLclVar.
Remove all the code that handles GT_QMARK/GT_COLON nodes,
as those node are no longer used by the RyuJit codebase.
In fgPerStatementLiveness renamed lhsNode to asgnLclVar.
Russ Keldorph [Tue, 12 Jan 2016 00:51:49 +0000 (16:51 -0800)]
Do loop cloning only if zero trip test can be ensured.
The problem is our loop detection logic detects the loop structure, but it
doesnt know the code outside the loop structure, esp., nothing about the
edge from the "head" into the loop "entry" block.
In the bug case, there is no zero-trip test in the "head", so the entrance
into the loop is not guarded. Note that the other point of entrance into
the "entry" block is from the "top" block which will be guarded by the
loop "bottom" test.
One way to make sure is when we invert a while loop into a do-while with
an explicit compiler cloned zero trip test, in fgOptWhileLoop, i.e., we
mark it as good to optimize with a flag. The fix marks the loop as ZTT.
The caveat is the JIT doesnt always do loop inversion.
This change is more conservative than it needs to be in the interest of
managing risk.
Sean Gillespie [Tue, 12 Jan 2016 23:05:21 +0000 (15:05 -0800)]
Remove volatile GC perf tests from the main run to provide more stable results. Also cause the GC perf framework to probe the current directory if the probe path is not set.
Andy Ayers [Tue, 12 Jan 2016 22:56:06 +0000 (14:56 -0800)]
Merge pull request #2619 from AndyAyersMS/MoreLocking
Set locked to true in project.lock.json
William Godbe [Tue, 12 Jan 2016 21:56:40 +0000 (13:56 -0800)]
Merge pull request #2492 from wtgodbe/memcpy2
Audit usage of memcpy in PAL for Debug
sivarv [Tue, 12 Jan 2016 21:37:07 +0000 (13:37 -0800)]
Fix to github issue #2349.
For the repro case the method being compiled is a generic method
whose generic context is derived from thisptr. For this reason JIT
is asked to keep thisptr alive.
Due to tail call loop optimization, the recursive method call at the end
is converted into a loop. This transformation assigns all the arguments
to temps and temps back to incoming parameters of the method and finally
branches to the first basic block. This will leads to the following basic
block
tmp = GT_NODE(thisptr)
thisptr = tmp
Here we have both use and def of thisptr. Lsra.cpp::SetLastUses() has
a bug in not properly accounting for thiptr, that leads to an assert failure.
Also, computeUpdateLifeVar()also needs be fixed to not consider
thisptr being born due to assignment of temp to thisptr.
Bruce Forstall [Tue, 12 Jan 2016 21:11:20 +0000 (13:11 -0800)]
Clean up build.sh
Fix some typos. Make it more readable.
Andy Ayers [Tue, 12 Jan 2016 01:40:56 +0000 (17:40 -0800)]
Add miscellaneous benchmarks
Burgers and the three V8 benchmarks: Richards, Crypto, Deltablue.
Jan Kotas [Tue, 12 Jan 2016 19:47:17 +0000 (11:47 -0800)]
Merge pull request #2620 from janvorli/fix-few-gc-details
Fix few details in the GC
Pat Gavlin [Tue, 12 Jan 2016 18:15:07 +0000 (10:15 -0800)]
Merge pull request #2607 from pgavlin/Reenableb99969
Re-enable b99969.
Jan Vorlicek [Tue, 12 Jan 2016 17:59:14 +0000 (18:59 +0100)]
Fix few details in the GC
- For Unix, the definition of __forceinline was missing the inline
- Allocation of GCThreadStubParams was missing a check for failure
- Removed few unnecessary #ifdefs for FEATURE_PAL from the GC sample
- Removed several obsolete functions from the GC sample
Gaurav Khanna [Tue, 12 Jan 2016 17:36:27 +0000 (09:36 -0800)]
Merge pull request #2618 from gkhanna79/TPALoadChanges
LoadByte/Path/NI support for Default Context
Andy Ayers [Tue, 12 Jan 2016 17:02:42 +0000 (09:02 -0800)]
Set locked to true in project.lock.json
Otherwise it's not really locked.
Jan Kotas [Tue, 12 Jan 2016 16:41:57 +0000 (08:41 -0800)]
Merge pull request #2611 from JohnChen0/master
Make CORCOMPILE_HEADER backward compatible
Eric Erhardt [Tue, 12 Jan 2016 15:42:29 +0000 (09:42 -0600)]
Merge pull request #2586 from eerhardt/IgnoreSymbols2
CompareOptions.IgnoreSymbols only ignores punctuation on Unix, but not other symbols
Gaurav Khanna (CLR) [Tue, 12 Jan 2016 01:26:13 +0000 (17:26 -0800)]
Add support Load assemblies from explicit path/streams into default load context
Andy Ayers [Tue, 12 Jan 2016 07:45:11 +0000 (23:45 -0800)]
Merge pull request #2549 from AndyAyersMS/PerfTestX
More integer benchmarks for the jit: NDhrystone
Andy Ayers [Tue, 12 Jan 2016 07:44:41 +0000 (23:44 -0800)]
Merge pull request #2558 from AndyAyersMS/SciMark
Add SciMark benchmark
Andy Ayers [Tue, 12 Jan 2016 07:43:47 +0000 (23:43 -0800)]
Merge pull request #2540 from AndyAyersMS/RoslynBenchmark
Add a simple Roslyn benchmarks
Jan Kotas [Tue, 12 Jan 2016 03:34:01 +0000 (19:34 -0800)]
Merge pull request #2613 from stephentoub/ifdef_stringbuilder
Add ifdef to suppress non-coreclr warning
stephentoub [Tue, 12 Jan 2016 01:54:22 +0000 (20:54 -0500)]
Remove StringBuilder allocation/usage from DateTimeFormat
ASP.NET uses DateTimeOffset.ToString("r") to format in accordance with RFC1123. The implementation of "r", for which the format includes quotes, ends up allocating a StringBuilder and parsing into it, just to get the quoted contents. With a minor transformation, this is unnecessary, allowing the StringBuilder and associated allocations and work to be removed.
Sergiy Kuryata [Tue, 12 Jan 2016 01:37:45 +0000 (17:37 -0800)]
Enable the stack-protector compiler option for the entire coreclr
codebase.
Rama krishnan Raghupathy [Tue, 12 Jan 2016 01:37:25 +0000 (17:37 -0800)]
Merge pull request #2572 from ramarag/event_source_payload
Fixing use case of incomplete Event Source payload
Pat Gavlin [Mon, 11 Jan 2016 18:15:48 +0000 (10:15 -0800)]
Re-enable b99969.
Now that #2286 has been fixed, b99969 can be re-enabled.
stephentoub [Mon, 11 Jan 2016 23:25:17 +0000 (18:25 -0500)]
Add ifdef to suppress non-coreclr warning
My change to optimize AppDomain.Setup included moving a variable out of a loop, which also ended up moving it out of an ifdef. That then causes an unused variable warning on some builds.
Hongtao Yu [Mon, 11 Jan 2016 23:16:59 +0000 (15:16 -0800)]
Merge pull request #2592 from hoyMS/Bug2311
Fix for issue 2311.
Hongtao Yu [Mon, 11 Jan 2016 23:15:02 +0000 (15:15 -0800)]
Merge pull request #2609 from hoyMS/Bug2294
Fix for bug 2294 [JitStress=2] Assertion failed 'curArgTabEntry->regN…
John Chen (CLR) [Mon, 11 Jan 2016 22:23:52 +0000 (14:23 -0800)]
Make CORCOMPILE_HEADER backward compatible
Resolve issue #2348 by reordering fields in CORCOMPILE_HEADER,
so that PEKind and Machines fields are in the same location as
in older versions of this struct.
Bruce Forstall [Mon, 11 Jan 2016 21:48:05 +0000 (13:48 -0800)]
Merge pull request #2587 from BruceForstall/BuildAllCmd
Add "all" command to build.cmd
Sejong Oh [Mon, 11 Jan 2016 20:58:40 +0000 (12:58 -0800)]
Merge pull request #2568 from sejongoh/bugfix_unsigned_16bit_cmp_codegen
Fix bad codegen for comparing 16-bit unsigned values
Matt Ellis [Mon, 11 Jan 2016 19:56:25 +0000 (11:56 -0800)]
Merge pull request #2601 from stephentoub/appdomain_setup_cleanup
Perf tweaks/cleanup to AppDomain.Setup
Hongtao Yu [Mon, 11 Jan 2016 19:03:32 +0000 (11:03 -0800)]
Fix for bug 2294 [JitStress=2] Assertion failed 'curArgTabEntry->regNum == regNum' in 'BringUpTest Main() in morph.cpp
The bug is due to a misproper definition of LAST_FP_ARGREG for Unix. On Windows, we set LAST_FP_ARGREG to XMM3. On UNix, the value should be XMM7.
Pat Gavlin [Mon, 11 Jan 2016 18:14:15 +0000 (10:14 -0800)]
Merge pull request #2400 from pgavlin/FixDebugTypes
Fix DebugType and Optimize values for JIT tests.
Eric Erhardt [Fri, 8 Jan 2016 18:02:56 +0000 (12:02 -0600)]
CompareOptions.IgnoreSymbols only ignores punctuation on Unix, but not other symbols
By default, ICU alternate shifted collation handling only ignores punctuation, not all symbols, so change the "variable top" to include all symbols and currency characters.
Fix #4907
stephentoub [Mon, 11 Jan 2016 02:09:58 +0000 (21:09 -0500)]
Avoid int[] and string[] allocations from String.Split in AppDomain.Setup
String.Split not only allocates the string[] to hold the results, it also allocates an int[inputString.Length] to hold the indices of the separators. With not much more code, we can do the splitting manually and avoid both arrays.