platform/upstream/coreclr.git
6 years agoMerge pull request #18766 from CarolEidt/Fix18765
Carol Eidt [Tue, 3 Jul 2018 19:21:11 +0000 (12:21 -0700)]
Merge pull request #18766 from CarolEidt/Fix18765

Build uses for atomic ops

6 years agoMerge pull request #18716 from BruceForstall/RemoveTstJobsFromViews
Bruce Forstall [Tue, 3 Jul 2018 17:27:00 +0000 (10:27 -0700)]
Merge pull request #18716 from BruceForstall/RemoveTstJobsFromViews

Remove build-only and TST jobs from the Jenkins views

6 years agoUpdate CoreClr, PgoData to preview1-26703-04, master-20180703-0030, respectively...
dotnet-maestro-bot [Tue, 3 Jul 2018 17:20:00 +0000 (10:20 -0700)]
Update CoreClr, PgoData to preview1-26703-04, master-20180703-0030, respectively (#18761)

6 years agoBuild uses for atomic ops
Carol Eidt [Tue, 3 Jul 2018 14:42:12 +0000 (07:42 -0700)]
Build uses for atomic ops

Fix #18765

6 years agoUse generic win-x86/win-x64 RIDs in stress_dependencies
Egor Chesakov [Tue, 3 Jul 2018 02:37:15 +0000 (19:37 -0700)]
Use generic win-x86/win-x64 RIDs in stress_dependencies

6 years agoAdd back most CreateInstance APIs to AppDomain and Activator (#18751)
Marco Rossignoli [Tue, 3 Jul 2018 04:38:33 +0000 (06:38 +0200)]
Add back most CreateInstance APIs to AppDomain and Activator (#18751)

* add ObjectHandle.cs

* add signature placeholder

* move CreateInstance from netfx

* move CreateInstanceFrom from netfx

* nit: visibility, text formatting

6 years agoUpdate CoreFX CI packages to NetcoreApp3 (#18760)
Andon Andonov [Tue, 3 Jul 2018 03:20:38 +0000 (20:20 -0700)]
Update CoreFX CI packages to NetcoreApp3 (#18760)

* Update to FX CI packages to NetcoreApp3

* Add Extra Dependencies

* Enable all tests fixed by change

6 years agoUpdating SSE_StaticCast and AVX_StaticCast to set the correct type on the returned...
Tanner Gooding [Sat, 30 Jun 2018 05:21:22 +0000 (22:21 -0700)]
Updating SSE_StaticCast and AVX_StaticCast to set the correct type on the returned node.

6 years agoFold away Sse.StaticCast and Avx.StaticCast in the importer
Tanner Gooding [Sun, 17 Jun 2018 15:58:20 +0000 (08:58 -0700)]
Fold away Sse.StaticCast and Avx.StaticCast in the importer

6 years agoAdding an Avx.StaticCast test (modified from the Sse.StaticCast test)
Tanner Gooding [Sun, 17 Jun 2018 15:57:51 +0000 (08:57 -0700)]
Adding an Avx.StaticCast test (modified from the Sse.StaticCast test)

6 years agoSuperPMI: add ability to exclude failing method contexts from replays (#18721)
Sergey Andreenko [Tue, 3 Jul 2018 00:32:59 +0000 (17:32 -0700)]
SuperPMI: add ability to exclude failing method contexts from replays (#18721)

* format spmi

* rename mchFile to mchFileName

* refactor ProcessChildStdOut

* add a stub to exclude methods

6 years agoSet the activation context for the CoreRun application to what is defined (#18728)
Aaron Robinson [Mon, 2 Jul 2018 23:21:59 +0000 (16:21 -0700)]
Set the activation context for the CoreRun application to what is defined (#18728)

in the target managed assembly. This allows RegFree COM scenarios and ensures
the intended app manifest is used for the 'exe' scenario.

6 years agoDebug registers cannot be copied in user mode (#18730)
Andrew Au [Mon, 2 Jul 2018 22:39:03 +0000 (15:39 -0700)]
Debug registers cannot be copied in user mode (#18730)

6 years agoDispatch Runtime Events to EventListener (#18649)
Brian Robbins [Mon, 2 Jul 2018 22:08:32 +0000 (15:08 -0700)]
Dispatch Runtime Events to EventListener (#18649)

6 years agoUpdate BuildTools, CoreClr, PgoData to preview1-03002-01, preview1-26702-04, master...
dotnet-maestro-bot [Mon, 2 Jul 2018 21:02:48 +0000 (14:02 -0700)]
Update BuildTools, CoreClr, PgoData to preview1-03002-01, preview1-26702-04, master-20180702-0047, respectively (#18731)

6 years agoMove RuntimeIDArg initialization (#18747)
Andon Andonov [Mon, 2 Jul 2018 20:54:58 +0000 (13:54 -0700)]
Move RuntimeIDArg initialization (#18747)

6 years agoFixing up the Sse41.Insert float HWIntrinsics
Tanner Gooding [Sat, 30 Jun 2018 21:58:14 +0000 (14:58 -0700)]
Fixing up the Sse41.Insert float HWIntrinsics

6 years agoreenable fixed arm64 altjit tests (#18722)
Sergey Andreenko [Mon, 2 Jul 2018 17:21:36 +0000 (10:21 -0700)]
reenable fixed arm64 altjit tests (#18722)

6 years agoAdd back DefinePInvokeMethod (#18742)
Atsushi Kanamori [Mon, 2 Jul 2018 17:11:33 +0000 (10:11 -0700)]
Add back DefinePInvokeMethod (#18742)

6 years agoAdding back the tests for Avx.MaskLoad
Tanner Gooding [Sat, 30 Jun 2018 19:12:32 +0000 (12:12 -0700)]
Adding back the tests for Avx.MaskLoad

6 years agoUpdating the Avx.Extract/Insert methods to throw PNSE when IsSupported is false
Tanner Gooding [Sat, 30 Jun 2018 19:10:40 +0000 (12:10 -0700)]
Updating the Avx.Extract/Insert methods to throw PNSE when IsSupported is false

a

6 years agoRemoving unnecessary `try/catch` blocks from the ExtractScalar and InsertScalar HWInt...
Tanner Gooding [Sat, 30 Jun 2018 18:28:47 +0000 (11:28 -0700)]
Removing unnecessary `try/catch` blocks from the ExtractScalar and InsertScalar HWIntrinsic test templates

6 years agoTabs vs. spaces (#18740)
dotnet-maestro-bot [Mon, 2 Jul 2018 09:32:47 +0000 (02:32 -0700)]
Tabs vs. spaces (#18740)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoFix some build breaks seen with the older VS we use to build with on desktop. (#18736)
Andy Ayers [Sun, 1 Jul 2018 22:43:16 +0000 (15:43 -0700)]
Fix some build breaks seen with the older VS we use to build with on desktop. (#18736)

6 years agoFix recursive inlining of PInvoke stubs (#18737)
Jan Kotas [Sun, 1 Jul 2018 13:02:04 +0000 (06:02 -0700)]
Fix recursive inlining of PInvoke stubs (#18737)

PInvoke stubs can be inlined into a regular methods in CoreRT. PInvoke transition
has to be inlined as well when that happens. Otherwise, there is a risk of recursive
inlining in corner cases.

6 years agoPass CompAllocator by value (#15025)
mikedn [Sat, 30 Jun 2018 17:05:30 +0000 (20:05 +0300)]
Pass CompAllocator by value (#15025)

Passing CompAllocator objects by value is advantageous because it no longer needs to be dynamically allocated and cached. CompAllocator instances can now be freely created, copied and stored, which makes adding new CompMemKind values easier.

Together with other cleanup this also improves memory allocation performance by removing some extra levels of indirection that were previously required - jitstd::allocator had a pointer to CompAllocator, CompAllocator had a pointer to Compiler and Compiler finally had a pointer to ArenaAllocator. Without MEASURE_MEM_ALLOC enabled, both jitstd::allocator and CompAllocator now just contain a pointer to ArenaAllocator. When MEASURE_MEM_ALLOC is enabled CompAllocator also contains a pointer but to a MemStatsAllocator object that holds the relevant memory kind. This way CompAllocator is always pointer sized so that enabling MEASURE_MEM_ALLOC does not result in increased memory usage due to objects that store a CompAllocator instance.

In order to implement this, 2 additional signficant changes have been made:
* MemStats has been moved to ArenaAllocator, it's after all the allocator's job to maintain statistics. This also fixes some issues related to memory statistics, such as not tracking the memory allocated by the inlinee compiler (since that one used its own MemStats instance).
* Extract the arena page pooling logic out of the allocator. It doesn't make sense to pool an allocator, it has very little state that can actually be reused and everyting else (including MemStats) needs to be reset on reuse. What really needs to be pooled is just a page of memory.

Since this was touching allocation code the opportunity has been used to perform additional cleanup:
* Remove unnecessary LSRA ListElementAllocator
* Remove compGetMem and compGetMemArray
* Make CompAllocator and HostAllocator more like the std allocator
* Update HashTable to use CompAllocator
* Update ArrayStack to use CompAllocator
* Move CompAllocator & friends to alloc.h

6 years agoUpdate CoreClr, PgoData to preview1-26630-01, master-20180630-0049, respectively...
dotnet-maestro-bot [Sat, 30 Jun 2018 11:53:40 +0000 (04:53 -0700)]
Update CoreClr, PgoData to preview1-26630-01, master-20180630-0049, respectively (#18729)

6 years agoFix build breaks with older MSVC compiler (#18725)
Jan Kotas [Sat, 30 Jun 2018 03:43:08 +0000 (20:43 -0700)]
Fix build breaks with older MSVC compiler (#18725)

6 years agoFixing some Bmi1 HWIntrinsic method names (#18718)
Tanner Gooding [Sat, 30 Jun 2018 02:19:31 +0000 (19:19 -0700)]
Fixing some Bmi1 HWIntrinsic method names (#18718)

6 years agoRegex: reduce allocation slightly, add tests, code cleanup, add parser comments ...
Viktor Hofer [Fri, 29 Jun 2018 15:47:53 +0000 (17:47 +0200)]
Regex: reduce allocation slightly, add tests, code cleanup, add parser comments (#30632)

* RegexParser & optionsstack ref

* Add test coverage for Group.Synchronized

* Adjust options mode test case

* Add inline comment '#' test branch

* Add comments

* Replace manual ToLower calls by Span.ToLower

* Make applicable fields readonly in parser

* Change to Assert to reduce an if check in one branch

* Code formatting

* Avoid string allocation when IgnoreCase set

Prefix patterns which are passed to RegexBoyerMoore are already
lowercased by the parser. Remove the redundant ToLower() call and assert
the patterns lowercase state

* Add surrogate pair positive & negative tests

* Add test cases for rtl anchor

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoMerge pull request #18715 from BruceForstall/FixSignedComparison
Bruce Forstall [Fri, 29 Jun 2018 21:49:09 +0000 (14:49 -0700)]
Merge pull request #18715 from BruceForstall/FixSignedComparison

Fix issue with signed/unsigned comparison

6 years agooptimize fgMorphTree for GenTreeArgList (#18582)
Sergey Andreenko [Fri, 29 Jun 2018 20:38:44 +0000 (13:38 -0700)]
optimize fgMorphTree for GenTreeArgList (#18582)

* add fgMorphArgList

* hide the call inside fgMorphSmpOp

* fix grammar mistakes

6 years agoRemove build-only and TST jobs from the Jenkins views
Bruce Forstall [Fri, 29 Jun 2018 19:28:29 +0000 (12:28 -0700)]
Remove build-only and TST jobs from the Jenkins views

We only want non-PR, "top-level" jobs in the views. Build-only
and TST jobs are always "child" jobs of other flow jobs, which
will be in the views.

6 years agoFix issue with signed/unsigned comparison
Bruce Forstall [Fri, 29 Jun 2018 19:05:59 +0000 (12:05 -0700)]
Fix issue with signed/unsigned comparison

On Mac (maybe on other platforms using clang?) the following set of
comparisons in the emitter were done as unsigned:
```
(val >= 0xFFFFFFFF80000000LL)
```
even though 'val' is signed. This led to assertion failures. On Windows,
the comparisons were signed.

To fix this, cast the constant to the signed `ssize_t` type (to match `val`).

Fixes #18341

6 years agoMerge pull request #18693 from BruceForstall/FixLinuxX64FlowJobs
Bruce Forstall [Fri, 29 Jun 2018 18:44:40 +0000 (11:44 -0700)]
Merge pull request #18693 from BruceForstall/FixLinuxX64FlowJobs

Stop creating Linux/x64 corefx flow jobs

6 years agoChange CancellationTokenRegistration.Unregister visibility from internal to public...
Luqun Lou [Fri, 29 Jun 2018 17:59:07 +0000 (10:59 -0700)]
Change CancellationTokenRegistration.Unregister visibility from internal to public (#18698)

6 years agoCorrected a few typos in the documentation and comments (#18706)
Phil Garcia [Fri, 29 Jun 2018 17:33:35 +0000 (10:33 -0700)]
Corrected a few typos in the documentation and comments (#18706)

* Corrected a few typos in the documentation and comments

* Corrected a few typos in the documentation and comments

* Corrected a few typos in the documentation and comments

* Corrected a few typos in the documentation and comments

* Corrected a few typos in the documentation and comments

* Corrected a few typos in the documentation and comments

6 years agoImprove bool.TryFormat perf (#18711)
Stephen Toub [Fri, 29 Jun 2018 17:31:51 +0000 (13:31 -0400)]
Improve bool.TryFormat perf (#18711)

* Improve bool.TryFormat perf

Improves throughput by ~50%, by avoiding AsSpan().CopyTo and just writing out the characters one-by-one.  I experimented with playing the same tricks around storing the data in a ulong and blitting it out to the destination reinterpreted as a span of ulongs, but it didn't make a measurable improvement and increased the code complexity.

* Update Boolean.cs

6 years agoMerge pull request #18696 from CarolEidt/Fix18362
Carol Eidt [Fri, 29 Jun 2018 16:41:16 +0000 (09:41 -0700)]
Merge pull request #18696 from CarolEidt/Fix18362

Fix & test for #18362

6 years agoJIT: fix regression when returning struct with no fields on SysV (#18708)
Andy Ayers [Fri, 29 Jun 2018 16:32:44 +0000 (09:32 -0700)]
JIT: fix regression when returning struct with no fields on SysV (#18708)

The runtime classifies such structs as being returned by reference, so we
need to follow suit in the jit. If the classifier says the value can't be
returned in a register, then so be it.

Add a test case.

6 years agoAdd public implementation CultureDataSupport (#18691)
Luqun Lou [Fri, 29 Jun 2018 16:24:45 +0000 (09:24 -0700)]
Add public implementation CultureDataSupport (#18691)

6 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to preview1-02929-01, preview1-26629...
dotnet-maestro-bot [Fri, 29 Jun 2018 15:15:05 +0000 (08:15 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02929-01, preview1-26629-04, preview1-26628-03, master-20180629-0054, respectively (#18694)

6 years agoRemove relocations for vtable chunks (#17147)
Gleb Balykov [Fri, 29 Jun 2018 14:25:17 +0000 (17:25 +0300)]
Remove relocations for vtable chunks (#17147)

* Separate sections READONLY_VCHUNKS and READONLY_DICTIONARY

* Remove relocations for second-level indirection of Vtable in case FEATURE_NGEN_RELOCS_OPTIMIZATIONS is enabled.

Introduce FEATURE_NGEN_RELOCS_OPTIMIZATIONS, under which NGEN specific relocations optimizations are enabled

* Replace push/pop of R11 in stubs with
  - str/ldr of R4 in space reserved in epilog for non-tail calls
  - usage of R4 with hybrid-tail calls (same as for EmitShuffleThunk)

* Replace push/pop of R11 for function epilog with usage of LR as helper register right before its restore from stack

6 years agoLSRA: fix multi-reg ops under FIELD_LIST
Carol Eidt [Thu, 28 Jun 2018 23:38:37 +0000 (16:38 -0700)]
LSRA: fix multi-reg ops under FIELD_LIST

Need to build a use for each reg.
Also, dump the defList if it's not empty at end of block.

6 years agoAdd test for #18362
Carol Eidt [Thu, 28 Jun 2018 23:10:55 +0000 (16:10 -0700)]
Add test for #18362

Also add to the arm & arm64 tests.lst

6 years agoStop creating Linux/x64 corefx flow jobs
Bruce Forstall [Thu, 28 Jun 2018 21:47:35 +0000 (14:47 -0700)]
Stop creating Linux/x64 corefx flow jobs

6 years agoMerge pull request #18689 from BruceForstall/UpdateArmBuildDocumentation
Bruce Forstall [Thu, 28 Jun 2018 19:20:31 +0000 (12:20 -0700)]
Merge pull request #18689 from BruceForstall/UpdateArmBuildDocumentation

Update ARM/Linux build directions

6 years agoUpdate Tizen CI docker image (#18567)
Eden [Thu, 28 Jun 2018 19:08:41 +0000 (04:08 +0900)]
Update Tizen CI docker image (#18567)

* Update Tizen rootfs generation scripts for Tizen 5.0 M1

* Update Tizen CI docker image

* Update Tizen CI RID

6 years agoUpdate ARM/Linux build directions
Bruce Forstall [Thu, 28 Jun 2018 18:35:21 +0000 (11:35 -0700)]
Update ARM/Linux build directions

6 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to preview1-02928-01, preview1-26627...
dotnet-maestro-bot [Thu, 28 Jun 2018 15:33:28 +0000 (08:33 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02928-01, preview1-26627-04, preview1-26627-04, master-20180627-0051, respectively (master) (#18588)

* Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02928-01, preview1-26627-04, preview1-26627-04, master-20180627-0051, respectively

* Rename netcoreapp2.2 => netcoreapp3.0

* Disable test for CoreFX update

6 years agoAvoid capturing ExecutionContext into CancellationTokenSource's Timer (#18670)
Stephen Toub [Thu, 28 Jun 2018 14:26:21 +0000 (10:26 -0400)]
Avoid capturing ExecutionContext into CancellationTokenSource's Timer (#18670)

* Avoid capturing ExecutionContext into CancellationTokenSource's Timer

It's not needed, and it can keep unrelated state alive unnecessarily

* Address PR feedback

6 years agoFix alternate stack cleanup on MUSL (#18685)
Jan Vorlicek [Thu, 28 Jun 2018 11:47:34 +0000 (13:47 +0200)]
Fix alternate stack cleanup on MUSL (#18685)

The MUSL implementation of sigaltstack checks that the ss.ss_size is
larger or equal than the MINSIGSTKSZ even when the ss_flags is set
to SS_DISABLE even though Linux man page for sigaltstack states that
when this flag is set, all other ss fields are ignored.

We were not setting the ss_size in this case and it was causing a memory
leak for each thread that has terminated on MUSL based Linux distros
like Alpine.

Glibc implementation doesn't check the ss_size when the SS_DISABLE is set
so the problem was really MUSL specific.

6 years agoTypo (#18684)
John Doe [Thu, 28 Jun 2018 11:47:06 +0000 (04:47 -0700)]
Typo (#18684)

* approrpriate -> appropriate

* allignment -> alignment

* aquire -> acquire

* aquisition -> acquisition

* arbitraty -> arbitrary

* arcance -> arcane

* archetecture -> architecture

* Archicture -> Architecture

* architecures -> architectures

* argmuent -> argument

6 years agoTypo (dotnet/corert#6029)
John Doe [Thu, 28 Jun 2018 10:03:49 +0000 (03:03 -0700)]
Typo (dotnet/corert#6029)

* aggresively -> aggressively

* algortithm -> algorithm

* anindex -> an index

* antecendent -> antecedent

* barnching -> branching

* becauase -> because

* behaivor -> behavior

* Boolen -> Boolean

* Browing -> Browsing

* calander -> calendar

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoJIT: fix bug returning small structs on linux x64 (#18563)
Andy Ayers [Thu, 28 Jun 2018 08:00:33 +0000 (01:00 -0700)]
JIT: fix bug returning small structs on linux x64 (#18563)

The jit was retyping all calls with small struct returns as power of two
sized ints when generating code for linux x64 and arm32/arm64. When the
results of those calls were assigned to fields the jit would use overly wide
stores which could corrupt neighboring fields.

The fix is to keep better track of the smallest power of two enclosing int type
size for the struct. If this exactly matches the struct size then the the
result of the call can be used in an arbitrary context. If the enclosing type is
larger, the call's result must be copied to a temp and then the temp can be
reinterpreted as the struct for subsequent uses.

Defer retyping inline candidates and tail call candidates.
Then handle deferred updates for cases where calls don't get inlined.

Add test cases for 6 byte structs showing the various situations the
jit must handle: callee is not an inline candidate, is an inline candidate
and gets inlined, or inline candidate that does not get inlined.

Add a 3 byte test case to get coverage on arm32. Add new tests to the
arm32/arm64 test lists.

6 years agoCross-bitness in ZapRelocs (#18665)
Egor Chesakov [Wed, 27 Jun 2018 23:50:15 +0000 (16:50 -0700)]
Cross-bitness in ZapRelocs (#18665)

* Cast to UINT32 to avoid warnings on Windows in ZapBaseRelocs::WriteReloc in src/zap/zaprelocs.cpp

* Replace TADDR with DWORD in ZapInfo::recordRelocation IMAGE_REL_BASED_PTR in src/zap/zapinfo.cpp

* Replace sizeof(cell) with TARGET_POINTER_SIZE in src/zap/zapimport.cpp

* Replace TADDR with DWORD in ZapBaseRelocs::WriteReloc IMAGE_REL_BASED_PTR in src/zap/zaprelocs.cpp

* Define target_size_t type

* Replace TADDR with target_size_t in ZapInfo::recordRelocation in src/zap/zapinfo.cpp

* Replace SIZE_T PVOID with target_size_t in src/zap/zapimport.cpp

* Replace TADDR with target_size_t in src/zap/zaprelocs.cpp

* Rename target_size_t to TARGET_POINTER_TYPE

6 years agoModify netci definition (#18677)
Andon Andonov [Wed, 27 Jun 2018 23:23:37 +0000 (16:23 -0700)]
Modify netci definition (#18677)

6 years agoAdd Public implementation RemoveEventHandler in EventRegistrationTokenTable (#18671)
Luqun Lou [Wed, 27 Jun 2018 23:13:10 +0000 (16:13 -0700)]
Add Public implementation RemoveEventHandler in EventRegistrationTokenTable (#18671)

6 years agoWindows CoreFX CI (#18365)
Andon Andonov [Wed, 27 Jun 2018 21:43:36 +0000 (14:43 -0700)]
Windows CoreFX CI  (#18365)

* Add test list CL switch

* End-To-End Test Run on Windows

* Cleanup

* MAX_PATH Workaround

* Set Execution directory for CoreFX tests

* Add All CoreFX PR Tests

* Add test dependencies

* Add extra dependencies

* Add parallel test execution

* Disable OuterLoop tests and System.Data.SqlClient.*  tests

* Initialize maximum degree of parallelization to Environment.ProcessCount

* Remove unnecessary cli option

* Update Dependencies

* Add "enabled" property to tests

* Remove exclusions due to TestUtilities mismatch

* Add capability to run all tests for running Helix test lists directly

* Refactor build script to build testhost when skipping managed tests

* Disable failing System.Threading.Tests.EventWaitHandleTests.Ctor_InvalidMode

* Add switch to skip native test build

* Add testing documentation

* Don't run tests marked as "disabled" when running all available tests

* Add switch to build only testhost and remove Core_Root_Stage

* Clean up TopN.CoreFX.Windows.issues.json

* Refactor build-test.cmd

* PR feedback - build pipeline and documentation

* PR Feedback - Test Helper headers and comments

* Fix buildtesthost option for only building CoreFX test dependencies

* Disable intermittently failing test DrawBezier_PointFs

6 years agoMerge pull request #18645 from tgiphil/readonly
Jan Kotas [Wed, 27 Jun 2018 18:55:04 +0000 (11:55 -0700)]
Merge pull request #18645 from tgiphil/readonly

Changed internal value to readonly for primitive types

6 years agoMoved SafeWaitHandle and cancellationToken to shared (#18662)
Anirudh Agnihotry [Wed, 27 Jun 2018 18:36:42 +0000 (11:36 -0700)]
Moved SafeWaitHandle and cancellationToken to shared (#18662)

* Moving SafeWaitHandle to shared

* Moved CancellationToken to shared

* _ remove from variable names

* Default change to Default(Token) and minor changes

* Fixing coreclr unix build

* moving semaphoreSlim to shared

* splitting safeWaitHandle to .windows and .unix

6 years agoRemove conditional compilation of DotNETRuntimeEventSource.cs.
Brian Robbins [Wed, 27 Jun 2018 01:23:07 +0000 (18:23 -0700)]
Remove conditional compilation of DotNETRuntimeEventSource.cs.

6 years agoFix sync.sh to call run.exe -p even if positional parameters are specified after --.
Brian Robbins [Wed, 27 Jun 2018 01:22:46 +0000 (18:22 -0700)]
Fix sync.sh to call run.exe -p even if positional parameters are specified after --.

6 years agoMerge pull request #18663 from fiigii/fixapis
Carol Eidt [Wed, 27 Jun 2018 18:12:33 +0000 (11:12 -0700)]
Merge pull request #18663 from fiigii/fixapis

Fix Aes and Ssse3.Shuffle intrinsic APIs

6 years agoMerge pull request #18425 from acmyu/xml
Amy [Wed, 27 Jun 2018 16:56:21 +0000 (09:56 -0700)]
Merge pull request #18425 from acmyu/xml

R2RDump - Output in XML format

6 years agoMerge pull request #18130 from sdmaclea/PR-ARM64-JIT-Use-LSE-Atomics
Brian Sullivan [Wed, 27 Jun 2018 16:51:32 +0000 (09:51 -0700)]
Merge pull request #18130 from sdmaclea/PR-ARM64-JIT-Use-LSE-Atomics

[Arm64] JIT generate LSE Atomics

6 years agoRemoves duplicate attributes (#18668)
Marek Safar [Wed, 27 Jun 2018 13:53:24 +0000 (15:53 +0200)]
Removes duplicate attributes (#18668)

6 years agoAdd VM support for Unsafe.AsRef(in T)
Jan Kotas [Wed, 27 Jun 2018 05:38:42 +0000 (22:38 -0700)]
Add VM support for Unsafe.AsRef(in T)

6 years agoApplying PR feedback
Phil Garcia [Wed, 27 Jun 2018 05:03:49 +0000 (22:03 -0700)]
Applying PR feedback

6 years agoMore Dead String (#18664)
Henry Sharber [Wed, 27 Jun 2018 03:41:33 +0000 (23:41 -0400)]
More Dead String (#18664)

Removed any strings in \src\inc\corerror.xml that appeared only in one or more of the following:
\src\dlls\mscorrc\mscorrc.rc
\src\pal\prebuilt\corerror\mscorurt.rc
\src\pal\prebuilt\inc\corerror.h

Fix #18420

6 years agoFix bogus assert in ArraySortHelper (dotnet/corert#6018)
Michal Strehovský [Tue, 26 Jun 2018 14:17:53 +0000 (16:17 +0200)]
Fix bogus assert in ArraySortHelper (dotnet/corert#6018)

Fixes #6016.
Resolves #6015.

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoSimplify built-in types across corefx (dotnet/corefx#30656)
Stephen Toub [Mon, 25 Jun 2018 23:54:41 +0000 (19:54 -0400)]
Simplify built-in types across corefx (dotnet/corefx#30656)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoFix Aes and Ssse3.Shuffle intrinsic APIs
Fei Peng [Tue, 26 Jun 2018 23:20:54 +0000 (16:20 -0700)]
Fix Aes and Ssse3.Shuffle intrinsic APIs

6 years agoFix merge errors, replace spaces with tab, print unwind flag name
Amy Yu [Tue, 26 Jun 2018 22:25:02 +0000 (15:25 -0700)]
Fix merge errors, replace spaces with tab, print unwind flag name

6 years agoDump disasm line by line, changes to dumping bytes to xml, fix
Amy Yu [Tue, 26 Jun 2018 21:11:46 +0000 (14:11 -0700)]
Dump disasm line by line, changes to dumping bytes to xml, fix
compilerIdentifier typo

6 years agoRefactor into TextDumper and XmlDumper classes
Amy Yu [Fri, 22 Jun 2018 23:17:24 +0000 (16:17 -0700)]
Refactor into TextDumper and XmlDumper classes

6 years agoXml serialize section contents and gcinfo transitions
Amy Yu [Fri, 22 Jun 2018 01:31:22 +0000 (18:31 -0700)]
Xml serialize section contents and gcinfo transitions

6 years agoXMLSerialize gc transitions and section contents
Amy Yu [Wed, 20 Jun 2018 00:57:52 +0000 (17:57 -0700)]
XMLSerialize gc transitions and section contents

6 years agoMake unwindinfo and gcinfo xml serializable
Amy Yu [Sat, 16 Jun 2018 00:09:48 +0000 (17:09 -0700)]
Make unwindinfo and gcinfo xml serializable

6 years agoOutput in xml format with XmlSerializer
Amy Yu [Mon, 11 Jun 2018 23:02:50 +0000 (16:02 -0700)]
Output in xml format with XmlSerializer

6 years agoAdd public to classes and set accessor to properties needed for serialization
Amy Yu [Mon, 11 Jun 2018 23:01:39 +0000 (16:01 -0700)]
Add public to classes and set accessor to properties needed for serialization

6 years agoMerge pull request #18435 from acmyu/unwind
Amy [Tue, 26 Jun 2018 22:01:14 +0000 (15:01 -0700)]
Merge pull request #18435 from acmyu/unwind

R2RDump - Use symbolic names for opcodes

6 years agoFix value numbering when selecting a constant (#18627)
Jakob Botsch Nielsen [Tue, 26 Jun 2018 14:57:47 +0000 (16:57 +0200)]
Fix value numbering when selecting a constant (#18627)

When applying selectors, constants were special-cased to not require any
type casts. However this is wrong if a narrowing needs to be performed.

Fix #18235

6 years agoDelete slack link, standardize on gitter (#18644)
Jan Kotas [Tue, 26 Jun 2018 05:56:03 +0000 (22:56 -0700)]
Delete slack link, standardize on gitter (#18644)

Contributes to https://github.com/dotnet/coreclr/issues/18643

6 years agoChanged internal value to readonly to all the primitive types
Phil Garcia [Tue, 26 Jun 2018 05:27:59 +0000 (22:27 -0700)]
Changed internal value to readonly to all the primitive types

6 years agoMerge pull request #18585 from BruceForstall/FixArmOffsets
Bruce Forstall [Mon, 25 Jun 2018 21:55:27 +0000 (14:55 -0700)]
Merge pull request #18585 from BruceForstall/FixArmOffsets

Clean up ARM reserved register handling

6 years agoRemove commentary on non-existent appx checks (#18631)
Rafael Rivera [Mon, 25 Jun 2018 20:13:11 +0000 (13:13 -0700)]
Remove commentary on non-existent appx checks (#18631)

Remove commentary on non-existent appx checks

6 years agoSimplify types in non-shared corelib (dotnet/corert#6008)
Stephen Toub [Mon, 25 Jun 2018 03:21:25 +0000 (23:21 -0400)]
Simplify types in non-shared corelib (dotnet/corert#6008)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoCross-bitness regular and thread static fields offsets (#18636)
Egor Chesakov [Mon, 25 Jun 2018 19:25:49 +0000 (12:25 -0700)]
Cross-bitness regular and thread static fields offsets (#18636)

* Define OFFSETOF__DomainLocalModule__m_pDataBlob_ OFFSETOF__DomainLocalModule__NormalDynamicEntry__m_pDataBlob in src/vm/appdomain.hpp

* Define OFFSETOF__ThreadLocalModule__m_pDataBlob OFFSETOF__ThreadLocalModule__DynamicEntry__m_pDataBlob in src/vm/threadstatics.h

* Add assertions and offsets for dynamically allocated statics

* Compensate OffsetOfDataBlob difference

* Check target specific offsets in assertions in src/vm/methodtablebuilder.cpp

6 years agoDon't close the JIT func info file on shutdown (#18060)
Koundinya Veluri [Mon, 25 Jun 2018 16:41:51 +0000 (09:41 -0700)]
Don't close the JIT func info file on shutdown (#18060)

During shutdown there can be a race between closing/nulling `compJitFuncInfoFile` in `compShutdown` and a background thread trying to write to it after checking that it was not null.

6 years agoCross-bitness in instance fields placement and CORINFO structs (#18366)
Egor Chesakov [Mon, 25 Jun 2018 16:17:00 +0000 (09:17 -0700)]
Cross-bitness in instance fields placement and CORINFO structs (#18366)

* Replace sizeof(OBJECTREF*) with TARGET_POINTER_SIZE

* Define IN_TARGET_32BIT IN_TARGET_64BIT macros

* Replace IN_WIN32 IN_WIN64 with IN_TARGET_32BIT IN_TARGET_64BIT in src/vm/jitinterface.cpp src/vm/methodtablebuilder.cpp

* Define and use OFFSETOF__CORINFO_* constants in clrjit

* Define for all 64-bit targets

* Use unsigned __int32 to emphasize that this is 32-bit number

* Rename Array__u1Elems to Array__data

* Eliminate OFFSETOF__CORINFO_RefArray__length

* Rename OFFSETOF__CORINFO_RefAny__ to OFFSETOF__CORINFO_TypedReference__

* Fix OFFSETOF__CORINFO_TypedReference__dataPtr macro value

6 years agoFix nested-anon-types warnings (#18591)
Adeel Mujahid [Mon, 25 Jun 2018 12:23:12 +0000 (15:23 +0300)]
Fix nested-anon-types warnings (#18591)

6 years agoRemove test logs (#18621)
Andon Andonov [Mon, 25 Jun 2018 05:45:27 +0000 (22:45 -0700)]
Remove test logs (#18621)

6 years agoRemoved dead strings used in debug-only code (#18622)
hsharber [Mon, 25 Jun 2018 01:18:15 +0000 (21:18 -0400)]
Removed dead strings used in debug-only code (#18622)

Removed strings used in debug-only code in ex.cpp

Fix #18420

6 years agoUpdate to latest released dotnet SDK (#18626)
Jan Kotas [Sun, 24 Jun 2018 20:45:15 +0000 (13:45 -0700)]
Update to latest released dotnet SDK (#18626)

6 years agonon shared changes and disabling tests
Anipik [Sun, 24 Jun 2018 04:29:23 +0000 (21:29 -0700)]
non shared changes and disabling tests

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoSimply type names in Corelib (#18623)
Stephen Toub [Sun, 24 Jun 2018 12:22:35 +0000 (08:22 -0400)]
Simply type names in Corelib (#18623)

6 years agoUse correct basic block to check legality of PInvoke callsite for inlining (#18620)
Jan Kotas [Sun, 24 Jun 2018 03:20:58 +0000 (20:20 -0700)]
Use correct basic block to check legality of PInvoke callsite for inlining (#18620)

It is the same logic as used in other similar places

6 years agoClean up ARM reserved register computations
Bruce Forstall [Thu, 21 Jun 2018 02:06:27 +0000 (19:06 -0700)]
Clean up ARM reserved register computations

Tighten up and correct the math in compRsvdRegCheck.

6 years agoMerge pull request #18600 from BruceForstall/FixArmFPFrameAddressLimits
Bruce Forstall [Sat, 23 Jun 2018 16:38:05 +0000 (09:38 -0700)]
Merge pull request #18600 from BruceForstall/FixArmFPFrameAddressLimits

Expand ARM local variable R11-based addressing