Viktor Hofer [Sun, 8 Jul 2018 13:41:26 +0000 (15:41 +0200)]
Fix Span LastIndexOf empty value handling
Anirudh Agnihotry [Sat, 7 Jul 2018 01:47:46 +0000 (18:47 -0700)]
TargetFrameworkName property initialized (#18814)
Stephen Toub [Fri, 6 Jul 2018 16:12:54 +0000 (12:12 -0400)]
Improve DateTime{Offset}.ParseExact performance for "O"/"o" roundtrip format (#18800)
Ports the code used by Utf8Parser, modified to support things Utf8Parser doesn't but DateTime{Offset{.ParseExact do, such as single-digit offset hours.
Bruce Forstall [Fri, 6 Jul 2018 16:00:49 +0000 (09:00 -0700)]
Merge pull request #18795 from BruceForstall/RemoveArmemJobs
Remove Ubuntu/Ubuntu16.04 emulator CI jobs
nkaretnikov2 [Fri, 6 Jul 2018 12:54:28 +0000 (15:54 +0300)]
[ARM] Mention a clang-5.0 issue in the documentation (#18803)
Brian Sullivan [Thu, 5 Jul 2018 23:03:18 +0000 (16:03 -0700)]
Merge pull request #18775 from briansull/add-noway-assert
Add noway asserts in gtNewZeroConNode and gtNewOneConNode
Bruce Forstall [Thu, 5 Jul 2018 22:07:14 +0000 (15:07 -0700)]
Remove Ubuntu/Ubuntu16.04 emulator CI jobs
Now that we have Ubuntu arm hardware in the lab, these are unnecessary.
The jobs have also been failing for months.
Aaron Robinson [Thu, 5 Jul 2018 21:29:27 +0000 (14:29 -0700)]
Update certain Marshal APIs to match exception thrown on .NET Framework (#18791)
Update certain Marshal APIs to match exception thrown on Desktop
Brian Sullivan [Wed, 20 Jun 2018 23:51:15 +0000 (16:51 -0700)]
Added noway asserts in gtNewZeroConNode and gtNewOneConNode
Added source code change that was needed to service 4.7.2 in fgMorphRecursiveFastTailCallIntoLoop
Set zero/one to null after noway_assert
Bruce Forstall [Thu, 5 Jul 2018 17:51:42 +0000 (10:51 -0700)]
Merge pull request #18793 from BruceForstall/UpdateLibUnwindIssue
Update Linux ARM libunwind instructions
Bruce Forstall [Thu, 5 Jul 2018 17:50:06 +0000 (10:50 -0700)]
Update Linux ARM libunwind instructions
Jarret Shook [Thu, 5 Jul 2018 16:46:51 +0000 (09:46 -0700)]
Enable genFnCalleeRegArgs for Arm64 Varargs (#18714)
* Enable genFnCalleeRegArgs for Arm64 Varargs
Before the method would early out and incorrectly expect the usage
of all incoming arguments to be their homed stack slots. It is
instead possible for incoming arguments to be homed to different
integer registers.
The change will mangle the float types for vararg cases in the same
way that is done during lvaInitUserArgs and fgMorphArgs.
* Apply format patch
* Account for softfp case
* Address feedback
* Apply format patch
* Use standard function header for mangleVarArgsType
* Remove confusing comment
Jan Kotas [Thu, 5 Jul 2018 06:04:02 +0000 (08:04 +0200)]
Delete dead code (#18783)
- Leftover from unobserved exception desktop quirk
- Unnecessary calls to AppDomain.IsFinalizingForUnload(). They were actually never required even with AppDomain support because of Environment.HasShutdownStarted returns true during AppDomain unload.
Stephen Toub [Thu, 5 Jul 2018 01:38:05 +0000 (21:38 -0400)]
Improve DateTime{Offset}.ParseExact{Multiple} performance for RFC1123 ("r") (#18771)
* Improve DateTime{Offset}.ParseExact{Multiple} performance for RFC1123 ("r")
Significantly improves the performance by porting and adapting the Utf8Parser code from corefx. This optimizes for the (default) case of a DateTimeStyles.None; specifying any other style falls back to the normal parsing support, as that requires handling things such as arbitrary whitespace anywhere in the string.
* Address PR feedback
Andy Ayers [Wed, 4 Jul 2018 20:33:36 +0000 (13:33 -0700)]
Re-enable jit regression test DevDiv_590771 (#18724)
The issue the test was hitting was worked around in #18292.
Fixes #17967.
Also add GitHub_18522_8 to the arm/arm64 lists (from #18708).
Viktor Hofer [Wed, 4 Jul 2018 18:56:25 +0000 (20:56 +0200)]
Add LastIndexOf compareoptions overload (#18652)
* Add LastIndexOf compareoptions overload
Tanner Gooding [Sun, 1 Jul 2018 15:06:46 +0000 (08:06 -0700)]
Adding tests for the byte overload of Ssse3.Shuffle
Tanner Gooding [Sun, 1 Jul 2018 15:01:49 +0000 (08:01 -0700)]
Adding support for the `byte` overload of `Ssse3.Shuffle`
Jan Kotas [Wed, 4 Jul 2018 09:19:38 +0000 (11:19 +0200)]
Remove mention of security transparency from message and comment (#18776)
Andrew Au [Wed, 4 Jul 2018 06:12:54 +0000 (23:12 -0700)]
compGSReorderStackLayout is not supported when EnC is on (#18713)
dotnet-maestro-bot [Wed, 4 Jul 2018 03:36:31 +0000 (20:36 -0700)]
Update CoreClr, CoreFx to preview1-26704-01, preview1-26704-01, respectively (#18773)
Luqun Lou [Wed, 4 Jul 2018 01:30:33 +0000 (18:30 -0700)]
Delete InternalsVisibleTo attributes from S.P.CoreLib (#18697)
Bruce Forstall [Tue, 3 Jul 2018 22:53:28 +0000 (15:53 -0700)]
Merge pull request #18504 from mikedn/comp-small
Make Compiler and CodeGen objects smaller
Tomas Weinfurt [Tue, 3 Jul 2018 21:00:40 +0000 (14:00 -0700)]
add missing files to package properly on FreeBSD (#18764)
Carol Eidt [Tue, 3 Jul 2018 20:02:07 +0000 (13:02 -0700)]
Merge pull request #18768 from CarolEidt/RemoveIsMultiReg
Remove Interval::isMultiReg
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
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
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)
Carol Eidt [Tue, 3 Jul 2018 16:46:04 +0000 (09:46 -0700)]
Remove Interval::isMultiReg
This is no longer used after #16517
Carol Eidt [Tue, 3 Jul 2018 14:42:12 +0000 (07:42 -0700)]
Build uses for atomic ops
Fix #18765
Egor Chesakov [Tue, 3 Jul 2018 02:37:15 +0000 (19:37 -0700)]
Use generic win-x86/win-x64 RIDs in stress_dependencies
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
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
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.
Tanner Gooding [Sun, 17 Jun 2018 15:58:20 +0000 (08:58 -0700)]
Fold away Sse.StaticCast and Avx.StaticCast in the importer
Tanner Gooding [Sun, 17 Jun 2018 15:57:51 +0000 (08:57 -0700)]
Adding an Avx.StaticCast test (modified from the Sse.StaticCast test)
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
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.
Andrew Au [Mon, 2 Jul 2018 22:39:03 +0000 (15:39 -0700)]
Debug registers cannot be copied in user mode (#18730)
Brian Robbins [Mon, 2 Jul 2018 22:08:32 +0000 (15:08 -0700)]
Dispatch Runtime Events to EventListener (#18649)
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)
Andon Andonov [Mon, 2 Jul 2018 20:54:58 +0000 (13:54 -0700)]
Move RuntimeIDArg initialization (#18747)
Tanner Gooding [Sat, 30 Jun 2018 21:58:14 +0000 (14:58 -0700)]
Fixing up the Sse41.Insert float HWIntrinsics
Sergey Andreenko [Mon, 2 Jul 2018 17:21:36 +0000 (10:21 -0700)]
reenable fixed arm64 altjit tests (#18722)
Atsushi Kanamori [Mon, 2 Jul 2018 17:11:33 +0000 (10:11 -0700)]
Add back DefinePInvokeMethod (#18742)
Tanner Gooding [Sat, 30 Jun 2018 19:12:32 +0000 (12:12 -0700)]
Adding back the tests for Avx.MaskLoad
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
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
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>
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)
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.
Mike Danes [Sat, 30 Jun 2018 19:45:01 +0000 (22:45 +0300)]
Replace compGetMemArray uses
Mike Danes [Thu, 21 Jun 2018 18:36:47 +0000 (21:36 +0300)]
Fix incorrect lvaTrackedToVarNum memset size
Mike Danes [Mon, 18 Jun 2018 18:19:08 +0000 (21:19 +0300)]
Handle the missing cache case in gtGetStructHandleForSIMD
Mike Danes [Sat, 16 Jun 2018 15:56:36 +0000 (18:56 +0300)]
Allocate space for siLatestTrackedScopes on demand
By the time siLatestTrackedScopes is needed the number of tracked variables is known so we can allocate an array of suitable size. Defaulting to lclMAX_TRACKED requires 4 kbytes and for many small methods that's a waste.
Mike Danes [Sat, 16 Jun 2018 20:07:49 +0000 (23:07 +0300)]
Remove Compiler::impSmallStack
Memory allocation via ArenaAllocator is cheap so it's not worth having this inline array that ends up wasting 384 bytes when a larger stack is needed.
Care needs to be taken when inlining to avoid allocating a new stack every time - just steal the stack of the inliner compiler (after ensuring that it is large enough).
Mike Danes [Sat, 16 Jun 2018 19:21:40 +0000 (22:21 +0300)]
Cleanup hashBvGlobalData
Each compiler object contains a hashBvGlobalData that's 80 bytes in size. Only 16 bytes are actually used - the hash and node free lists.
* hbvFreeVectorList is supposed to be used by hashBv::freeVector but nothing calls that and getNewVector does not attempt to use the free list
* hbvHashSizeLog2 is always 0
* hashBvNextIterator is used only in HbvNext and that function is never used
Mike Danes [Sat, 16 Jun 2018 17:04:09 +0000 (20:04 +0300)]
Remove unused Compiler members
Mike Danes [Sat, 16 Jun 2018 14:43:15 +0000 (17:43 +0300)]
Move SIMD/Intrinsic handles out of Compiler
These handles require ~256 bytes and are only needed if the method uses SIMD/intrinsics. Also, the inlinee compiler can/should reuse them to avoid redundant name lookups.
Mike Danes [Sat, 16 Jun 2018 13:45:02 +0000 (16:45 +0300)]
Move temp info from Compiler to RegSet
Temporaries are only used during register allocation and code generation. They waste space (136 bytes) in the compiler object during inlining.
Mike Danes [Sat, 16 Jun 2018 12:53:38 +0000 (15:53 +0300)]
Allocate space for lvaTrackedToVarNum on demand
Compiler::lvaTrackedToVarNum requires 2 kbytes and it's not used when the compiler object is used for inlining.
Mike Danes [Sat, 16 Jun 2018 11:38:36 +0000 (14:38 +0300)]
Allocate space for the loop table on demand
Compiler::optLoopTable requires 2.5kbytes (the entire Compiler object is around 7.5kbytes) and it's not used when the method does not contain loops, when optimizations are disabled or when the compiler is used for inlining.
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
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)
Jan Kotas [Sat, 30 Jun 2018 03:43:08 +0000 (20:43 -0700)]
Fix build breaks with older MSVC compiler (#18725)
Tanner Gooding [Sat, 30 Jun 2018 02:19:31 +0000 (19:19 -0700)]
Fixing some Bmi1 HWIntrinsic method names (#18718)
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>
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
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
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.
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
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
Luqun Lou [Fri, 29 Jun 2018 17:59:07 +0000 (10:59 -0700)]
Change CancellationTokenRegistration.Unregister visibility from internal to public (#18698)
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
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
Carol Eidt [Fri, 29 Jun 2018 16:41:16 +0000 (09:41 -0700)]
Merge pull request #18696 from CarolEidt/Fix18362
Fix & test for #18362
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.
Luqun Lou [Fri, 29 Jun 2018 16:24:45 +0000 (09:24 -0700)]
Add public implementation CultureDataSupport (#18691)
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)
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
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.
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
Bruce Forstall [Thu, 28 Jun 2018 21:47:35 +0000 (14:47 -0700)]
Stop creating Linux/x64 corefx flow jobs
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
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
Bruce Forstall [Thu, 28 Jun 2018 18:35:21 +0000 (11:35 -0700)]
Update ARM/Linux build directions
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
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
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.
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
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>
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.
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
Andon Andonov [Wed, 27 Jun 2018 23:23:37 +0000 (16:23 -0700)]
Modify netci definition (#18677)
Luqun Lou [Wed, 27 Jun 2018 23:13:10 +0000 (16:13 -0700)]
Add Public implementation RemoveEventHandler in EventRegistrationTokenTable (#18671)
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
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
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
Brian Robbins [Wed, 27 Jun 2018 01:23:07 +0000 (18:23 -0700)]
Remove conditional compilation of DotNETRuntimeEventSource.cs.
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 --.