Skip to content

Build xunit wrappers using SDK #10

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 457 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
457 commits
Select commit Hold shift + click to select a range
8684550
Merge pull request #18425 from acmyu/xml
acmyu Jun 27, 2018
a3885cb
Merge pull request #18663 from fiigii/fixapis
CarolEidt Jun 27, 2018
b45be1f
Fix sync.sh to call run.exe -p even if positional parameters are spec…
brianrob Jun 27, 2018
b2959ed
Remove conditional compilation of DotNETRuntimeEventSource.cs.
brianrob Jun 27, 2018
11c9d85
Moved SafeWaitHandle and cancellationToken to shared (#18662)
Anipik Jun 27, 2018
eeb9e89
Merge pull request #18645 from tgiphil/readonly
jkotas Jun 27, 2018
d3772d9
Windows CoreFX CI (#18365)
A-And Jun 27, 2018
7e6c6ce
Add Public implementation RemoveEventHandler in EventRegistrationToke…
luqunl Jun 27, 2018
634b609
Modify netci definition (#18677)
A-And Jun 27, 2018
1a24a27
Cross-bitness in ZapRelocs (#18665)
echesakov Jun 27, 2018
2f2a9b1
JIT: fix bug returning small structs on linux x64 (#18563)
AndyAyersMS Jun 28, 2018
127a888
Typo (dotnet/corert#6029)
github-john-doe Jun 28, 2018
1a34c72
Typo (#18684)
github-john-doe Jun 28, 2018
83bdd21
Fix alternate stack cleanup on MUSL (#18685)
janvorli Jun 28, 2018
7d72463
Avoid capturing ExecutionContext into CancellationTokenSource's Timer…
stephentoub Jun 28, 2018
e0e2859
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02928-01, pre…
dotnet-maestro-bot Jun 28, 2018
7d13196
Update ARM/Linux build directions
BruceForstall Jun 28, 2018
96a47e0
Update Tizen CI docker image (#18567)
edenlee1212 Jun 28, 2018
1ad9c94
Merge pull request #18689 from BruceForstall/UpdateArmBuildDocumentation
BruceForstall Jun 28, 2018
f71044a
Stop creating Linux/x64 corefx flow jobs
BruceForstall Jun 28, 2018
b9db2cf
Add test for #18362
CarolEidt Jun 28, 2018
965c96e
LSRA: fix multi-reg ops under FIELD_LIST
CarolEidt Jun 28, 2018
61146b5
Remove relocations for vtable chunks (#17147)
gbalykov Jun 29, 2018
d96ac2c
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02929-01, pre…
dotnet-maestro-bot Jun 29, 2018
7acc719
Add public implementation CultureDataSupport (#18691)
luqunl Jun 29, 2018
65d3199
JIT: fix regression when returning struct with no fields on SysV (#18…
AndyAyersMS Jun 29, 2018
13e7606
Merge pull request #18696 from CarolEidt/Fix18362
CarolEidt Jun 29, 2018
c209f0b
Improve bool.TryFormat perf (#18711)
stephentoub Jun 29, 2018
d695056
Corrected a few typos in the documentation and comments (#18706)
tgiphil Jun 29, 2018
ef85b4e
Change CancellationTokenRegistration.Unregister visibility from inter…
luqunl Jun 29, 2018
f2eb930
Merge pull request #18693 from BruceForstall/FixLinuxX64FlowJobs
BruceForstall Jun 29, 2018
d6f814d
Fix issue with signed/unsigned comparison
BruceForstall Jun 29, 2018
7b35c6e
Remove build-only and TST jobs from the Jenkins views
BruceForstall Jun 29, 2018
f3da13e
optimize fgMorphTree for GenTreeArgList (#18582)
Jun 29, 2018
c7bfd35
Merge pull request #18715 from BruceForstall/FixSignedComparison
BruceForstall Jun 29, 2018
dbaf295
Regex: reduce allocation slightly, add tests, code cleanup, add parse…
ViktorHofer Jun 29, 2018
20c38ed
Fixing some Bmi1 HWIntrinsic method names (#18718)
tannergooding Jun 30, 2018
7ec4642
Fix build breaks with older MSVC compiler (#18725)
jkotas Jun 30, 2018
9f98cc5
Update CoreClr, PgoData to preview1-26630-01, master-20180630-0049, r…
dotnet-maestro-bot Jun 30, 2018
c2baf04
Pass CompAllocator by value (#15025)
mikedn Jun 30, 2018
f758341
Allocate space for the loop table on demand
mikedn Jun 16, 2018
e39f1d8
Allocate space for lvaTrackedToVarNum on demand
mikedn Jun 16, 2018
9ca3690
Move temp info from Compiler to RegSet
mikedn Jun 16, 2018
95770ac
Move SIMD/Intrinsic handles out of Compiler
mikedn Jun 16, 2018
c991031
Remove unused Compiler members
mikedn Jun 16, 2018
235bc72
Cleanup hashBvGlobalData
mikedn Jun 16, 2018
f26852e
Remove Compiler::impSmallStack
mikedn Jun 16, 2018
2e0cc33
Allocate space for siLatestTrackedScopes on demand
mikedn Jun 16, 2018
45c0416
Handle the missing cache case in gtGetStructHandleForSIMD
mikedn Jun 18, 2018
40fdb3e
Fix incorrect lvaTrackedToVarNum memset size
mikedn Jun 21, 2018
10729e1
Replace compGetMemArray uses
mikedn Jun 30, 2018
55023b7
Fix recursive inlining of PInvoke stubs (#18737)
jkotas Jul 1, 2018
c80466d
Fix some build breaks seen with the older VS we use to build with on …
AndyAyersMS Jul 1, 2018
1310065
Tabs vs. spaces (#18740)
dotnet-maestro-bot Jul 2, 2018
1613245
Removing unnecessary `try/catch` blocks from the ExtractScalar and In…
tannergooding Jun 30, 2018
50b2ac8
Updating the Avx.Extract/Insert methods to throw PNSE when IsSupporte…
tannergooding Jun 30, 2018
e524fbe
Adding back the tests for Avx.MaskLoad
tannergooding Jun 30, 2018
ad834bb
Add back DefinePInvokeMethod (#18742)
atsushikan Jul 2, 2018
e65d730
reenable fixed arm64 altjit tests (#18722)
Jul 2, 2018
a7167dd
Fixing up the Sse41.Insert float HWIntrinsics
tannergooding Jun 30, 2018
a2d490d
Move RuntimeIDArg initialization (#18747)
A-And Jul 2, 2018
834799c
Update BuildTools, CoreClr, PgoData to preview1-03002-01, preview1-26…
dotnet-maestro-bot Jul 2, 2018
b3b9d08
Dispatch Runtime Events to EventListener (#18649)
brianrob Jul 2, 2018
5f306d6
Debug registers cannot be copied in user mode (#18730)
cshung Jul 2, 2018
7222c56
Set the activation context for the CoreRun application to what is def…
AaronRobinsonMSFT Jul 2, 2018
15a6beb
SuperPMI: add ability to exclude failing method contexts from replays…
Jul 3, 2018
bb027de
Adding an Avx.StaticCast test (modified from the Sse.StaticCast test)
tannergooding Jun 17, 2018
94edffc
Fold away Sse.StaticCast and Avx.StaticCast in the importer
tannergooding Jun 17, 2018
e3292de
Updating SSE_StaticCast and AVX_StaticCast to set the correct type on…
tannergooding Jun 30, 2018
f32c75e
Update CoreFX CI packages to NetcoreApp3 (#18760)
A-And Jul 3, 2018
c7c50c5
Add back most CreateInstance APIs to AppDomain and Activator (#18751)
MarcoRossignoli Jul 3, 2018
8712060
Use generic win-x86/win-x64 RIDs in stress_dependencies
echesakov Jul 3, 2018
f780dda
Build uses for atomic ops
CarolEidt Jul 3, 2018
5d01d2d
Remove Interval::isMultiReg
CarolEidt Jul 3, 2018
4a4cbc5
Update CoreClr, PgoData to preview1-26703-04, master-20180703-0030, r…
dotnet-maestro-bot Jul 3, 2018
13f2f8c
Merge pull request #18716 from BruceForstall/RemoveTstJobsFromViews
BruceForstall Jul 3, 2018
49e69bc
Merge pull request #18766 from CarolEidt/Fix18765
CarolEidt Jul 3, 2018
dc8ee8c
Merge pull request #18768 from CarolEidt/RemoveIsMultiReg
CarolEidt Jul 3, 2018
8d32f87
add missing files to package properly on FreeBSD (#18764)
wfurt Jul 3, 2018
7d048c0
Merge pull request #18504 from mikedn/comp-small
BruceForstall Jul 3, 2018
c5dce0a
Delete InternalsVisibleTo attributes from S.P.CoreLib (#18697)
luqunl Jul 4, 2018
78cdaf1
Update CoreClr, CoreFx to preview1-26704-01, preview1-26704-01, respe…
dotnet-maestro-bot Jul 4, 2018
2ce3f25
compGSReorderStackLayout is not supported when EnC is on (#18713)
cshung Jul 4, 2018
4da00cf
Remove mention of security transparency from message and comment (#18…
jkotas Jul 4, 2018
d78b519
Adding support for the `byte` overload of `Ssse3.Shuffle`
tannergooding Jul 1, 2018
8aee85b
Adding tests for the byte overload of Ssse3.Shuffle
tannergooding Jul 1, 2018
4e645b1
Add LastIndexOf compareoptions overload (#18652)
ViktorHofer Jul 4, 2018
2946fdf
Re-enable jit regression test DevDiv_590771 (#18724)
AndyAyersMS Jul 4, 2018
9f9a37d
Improve DateTime{Offset}.ParseExact{Multiple} performance for RFC1123…
stephentoub Jul 5, 2018
cd1232d
Delete dead code (#18783)
jkotas Jul 5, 2018
b1bda1b
Enable genFnCalleeRegArgs for Arm64 Varargs (#18714)
Jul 5, 2018
5c2fbed
Update Linux ARM libunwind instructions
BruceForstall Jul 5, 2018
d9d56cc
Merge pull request #18793 from BruceForstall/UpdateLibUnwindIssue
BruceForstall Jul 5, 2018
47c744e
Added noway asserts in gtNewZeroConNode and gtNewOneConNode
briansull Jun 20, 2018
c32eff7
Update certain Marshal APIs to match exception thrown on .NET Framewo…
AaronRobinsonMSFT Jul 5, 2018
591a710
Remove Ubuntu/Ubuntu16.04 emulator CI jobs
BruceForstall Jul 5, 2018
5922cd3
Merge pull request #18775 from briansull/add-noway-assert
briansull Jul 5, 2018
7776189
[ARM] Mention a clang-5.0 issue in the documentation (#18803)
nkaretnikov2 Jul 6, 2018
025a975
Don't change PUTARG_REG type on arm64
CarolEidt Jul 6, 2018
a0ad19e
Merge pull request #18795 from BruceForstall/RemoveArmemJobs
BruceForstall Jul 6, 2018
e650d42
Improve DateTime{Offset}.ParseExact performance for "O"/"o" roundtrip…
stephentoub Jul 6, 2018
2dd9ba5
TargetFrameworkName property initialized (#18814)
Anipik Jul 7, 2018
3f4e0c7
Fix Span LastIndexOf empty value handling
ViktorHofer Jul 8, 2018
018dc20
LastIndexOf corner case fix when span is empty (#18826)
ViktorHofer Jul 8, 2018
13a7e70
Correct AssemblyLoadContext comment (#18809)
richlander Jul 8, 2018
82828f7
Moved ManualResetEventSlim to shared (#18799)
Anipik Jul 9, 2018
4aac688
Undo unnecessary BinaryReader::ReadOneChar/InternalReadOneChar split …
jkotas Jul 9, 2018
4349690
Fix a comment in the string.ToLower() method (#18832)
HumanEquivalentUnit Jul 9, 2018
7baedfd
CoreFX CI Unix Staging commit (#18750)
A-And Jul 9, 2018
a5fbfa5
Add R2RDump to build.proj, running dotnet restore before target build
acmyu Jul 3, 2018
a735813
Use BuildManagedTools argument instead of environment variable, remov…
acmyu Jul 3, 2018
98dd60a
Fix test errors
acmyu Jul 3, 2018
fca544f
Fix serialization type in NotFiniteNumberException (#18833)
ViktorHofer Jul 9, 2018
7bec88e
Renaming ScalarUnOpTest to ScalarSimdUnOpTest
tannergooding Jul 4, 2018
a58184f
Implementing the x86 TrailingZeroCount HWIntrinsic
tannergooding Jul 4, 2018
e60ad4d
Adding tests for the x86 TrailingZeroCount HWintrinsic
tannergooding Jul 4, 2018
a27def0
Implementing the AndNot, ExtractLowestSetBit, GetMaskUpToLowestSetBit…
tannergooding Jul 6, 2018
a1a5800
Adding tests for the AndNot, ExtractLowestSetBit, GetMaskUpToLowestSe…
tannergooding Jul 6, 2018
5ec86ef
Implementing the ParallelBitDeposit and ParallelBitExtract Bmi2 HWInt…
tannergooding Jul 6, 2018
d5901fb
Adding tests for the ParallelBitDeposit and ParallelBitExtract Bmi2 H…
tannergooding Jul 6, 2018
52f9c8a
Updating InstructionSet_BMI1/2 to be controlled by the COMPlus_Enable…
tannergooding Jul 7, 2018
0cde2fb
Exclude failing CoreFx test
acmyu Jul 9, 2018
23f7cb0
Fixing a call to emitIns_SIMD_R_R_AR_R to pass arguments in the corre…
tannergooding Jul 7, 2018
295e24c
Updated fix for VSO 610014
briansull Jul 6, 2018
39229d5
Exclude failing CoreFx test (#18844)
acmyu Jul 10, 2018
dab0d71
Move BinaryReader to shared CoreLib partition (#18845)
jkotas Jul 10, 2018
2d7baf2
Updating the x86 HWIntrinsic test templates to test struct field scen…
tannergooding Jul 10, 2018
6de41e2
Regenerating the x86 HWIntrinsic tests to cover struct field scenarios
tannergooding Jul 10, 2018
32741b9
GS cookie check fix for debugger stackwalks port
hoyosjs Jul 9, 2018
7920cf1
Merge pull request #18653 from acmyu/build
acmyu Jul 10, 2018
75c64dc
Merge pull request #18812 from briansull/fix_610014
briansull Jul 10, 2018
cb005bd
Fix two issues in Marshal.SecureStringToBSTR (#18851)
stephentoub Jul 10, 2018
eb40539
Merge pull request #18805 from CarolEidt/Fix18746
CarolEidt Jul 10, 2018
52d8382
Fixing encodeXmmRegAsIval to ensure the result meets the "fits in imm…
tannergooding Jul 10, 2018
f39809b
Initial implementation of method fixup parser (#18749)
trylek Jul 10, 2018
a211090
Remove random.NextDouble() from JIT/HardwareIntrinsics tests (#18838)
echesakov Jul 10, 2018
5635ab6
Re-enable tests for #13731 which was closed long ago
BruceForstall Jul 10, 2018
164f9c5
Fix ShowLocallocAlignment test for x86
BruceForstall Jul 10, 2018
08cc9e0
Disable tests for Windows/arm64 with GCStress=3 that take too long
BruceForstall Jul 11, 2018
d5db5ac
Adjust JIT automated testing for tiered compilation (#18828)
noahfalk Jul 11, 2018
b2abf26
Merge pull request #18860 from BruceForstall/ReEnable13731Tests
BruceForstall Jul 11, 2018
9cd6e82
Merge pull request #18861 from BruceForstall/FixShowLocalloc
BruceForstall Jul 11, 2018
b3c98d5
Make Number.Parsing.cs BigEndian friendly (#18853)
EgorBo Jul 11, 2018
874b694
Optimize Double/Single.IsNegative
jkotas Jul 11, 2018
c82bd22
Merge pull request #18859 from hoyosjs/fix-debug-gscookie-check
hoyosjs Jul 11, 2018
af2bdde
Merge pull request #18862 from BruceForstall/DisableLongRunningGCStre…
BruceForstall Jul 12, 2018
dd32971
Remove TODO comment from CancellationTokenRegistration.Unregister (#1…
stephentoub Jul 12, 2018
a03b08a
Fix VEX.vvvv encoding for AVX.BlendVariable
FeiPengIntel Jul 11, 2018
e3ccef1
CoreFX CI Unix (#18753)
A-And Jul 12, 2018
5d8b97a
Don't trim compiler-generated anonymous types. (#18835)
brianrob Jul 12, 2018
8747e2d
Include the processor atomic operations in the OperIsStore category
briansull Jul 12, 2018
89968de
Added the repro test case
briansull Jul 12, 2018
4929eba
Fixes for bugs in fgMorphCast and optNarrowTree. (#18816)
erozenfeld Jul 12, 2018
f3ab7e0
Merge pull request #18887 from briansull/atomic-fix
briansull Jul 13, 2018
47e106e
Remove dead/unreachable code from ARM32 and ARM64 emitters (#18878)
echesakov Jul 13, 2018
0e22b10
Disable 3 long-running tests and 1 failing test (#18896)
BruceForstall Jul 13, 2018
b89e230
Add prefix to DAC's PAL exports for alpine (#18873)
Jul 13, 2018
4bd9b33
Remove System.Security.Cryptography.X509Certificates.Tests from Windo…
echesakov Jul 13, 2018
552a24d
Enable logs (#18881)
A-And Jul 13, 2018
454dcda
Remove unnecessary R2R jobs (#18902)
BruceForstall Jul 13, 2018
dc7492e
JIT: optimize some cases of unused structs (#18819)
AndyAyersMS Jul 13, 2018
78fc03b
Improve Int32/Int64 {Try}Parse performance for NumberStyles.Integer (…
stephentoub Jul 13, 2018
827b5f1
Enable Windows ARM64 corefx jobs
BruceForstall Jul 11, 2018
716227c
Enable 'jitnosimd' job for Linux/arm64 (#18890)
BruceForstall Jul 12, 2018
a6b9bbb
Remove version increment from Dictionary<K,V>.Remove overloads (#18854)
Wraith2 Jul 14, 2018
2bffb76
Fix some failures when using build-test.sh
Jul 6, 2018
184c350
Revert "Fix some failures when using build-test.sh"
RussKeldorph Jul 14, 2018
2af68c4
Temporarily allow combase.dll!RoGetActivationFactory (#18922)
stephentoub Jul 15, 2018
28a8d42
Expose SpinWait.SpinOnce(int sleep1Threshold) overload (#18204)
kouvel Jul 15, 2018
ca6c32e
Remove unused resource strings from System.Private.CoreLib (#18808)
stephentoub Jul 15, 2018
309e905
CoreFX test fixes (#18929)
jkotas Jul 16, 2018
ce0a261
Improve throughput of UInt32/UInt64 integer parsing (#18930)
stephentoub Jul 16, 2018
f4b36aa
Add back in code deleted in .NET Core port.
vancem Jul 16, 2018
d9641a0
Mark RuntimeEventSourceTest as GCStressIncompatible (#18911)
echesakov Jul 16, 2018
c0bad3c
Improve narrowing of GT_AND nodes. (#18916)
erozenfeld Jul 16, 2018
d3fe9a8
Fix disabled test name (#18932)
jkotas Jul 16, 2018
c389865
Fixing markdown list formatting (#18936)
mattwarren Jul 16, 2018
b4470d7
Ensure BuildUse uses the correct reg number
CarolEidt Jul 12, 2018
37322ac
Add no tiered compilation test jobs (#18864)
noahfalk Jul 16, 2018
84643e6
Merge pull request #18917 from BruceForstall/dev/unix_test_workflow
BruceForstall Jul 16, 2018
71a9d8b
Implementing the Avx2 AlignRight, Blend, and ConvertTo* hwintrinsics.
tannergooding Jul 12, 2018
15ed066
Adding tests for the Avx2 AlignRight, Blend, and ConvertTo* hwintrins…
tannergooding Jul 15, 2018
c296f06
PR Feedback
CarolEidt Jul 16, 2018
2a4db3b
JIT: fix value numbering to handle GT_NULLCHECK more generally (#18942)
AndyAyersMS Jul 17, 2018
8a6fe59
Use `FEATURE_ARG_SPLIT` to qualify handling of `GT_PUTARG_SPLIT`
CarolEidt Jul 17, 2018
6b403ca
Apply tiering's call counting delay more broadly (#18610)
kouvel Jul 17, 2018
cc3e7d0
Delete redundant broken offsetof definitions (#18947)
jkotas Jul 17, 2018
f22e633
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-03013-03, pre…
dotnet-maestro-bot Jul 17, 2018
624f72d
Improve throughput of {U}Int32/64.{Try}Parse for hex (#18952)
stephentoub Jul 17, 2018
2b50bba
Move Decimal to shared (#18948)
pentp Jul 17, 2018
d25bcb8
Merge pull request #18891 from CarolEidt/Fix18153
CarolEidt Jul 17, 2018
f48801e
Kill RCX when used by shift
CarolEidt Jul 16, 2018
f4145a1
Merge pull request #18938 from vancem/EventSourceShutdown
vancem Jul 17, 2018
f69989e
Update NativeCallable attribute tests (#18946)
AaronRobinsonMSFT Jul 17, 2018
83ee28e
Update CoreClr, CoreFx, PgoData to preview1-26717-04, preview1-26717-…
dotnet-maestro-bot Jul 17, 2018
eaf111b
Add pooling for JIT scratch memory (#18924)
jkotas Jul 17, 2018
4b618d9
Clean-up number.cpp (#18964)
pentp Jul 17, 2018
a113b1c
Enable CoreFx tests disabled in https://github.com/dotnet/coreclr/iss…
echesakov Jul 17, 2018
aa64317
Fix corefx altjit test jobs
BruceForstall Jul 17, 2018
1456a38
Delete Span ifdefs that are no longer needed (#18982)
jkotas Jul 18, 2018
fb37382
Optimize {Try}FormatDecimal (#18935)
pentp Jul 18, 2018
cc52c67
Remove unuseful null check on Activator.CreateInstance (#18806)
MarcoRossignoli Jul 18, 2018
63cbbaf
Use api-set instead of combase.dll (#18981)
jkotas Jul 18, 2018
394341a
Merge pull request #18941 from CarolEidt/Fix18884
CarolEidt Jul 18, 2018
3c1e90c
Use FD_CLOEXEC instead of 1. (#18976)
jaykrell Jul 18, 2018
8c50507
Revert "Improve narrowing of GT_AND nodes. (#18916)" (#18975)
jkotas Jul 18, 2018
eb622be
R2RDump - Test infrastructure (#18745)
acmyu Jul 18, 2018
d7b0794
Merge pull request #18970 from BruceForstall/FixAltjitCorefxTests
BruceForstall Jul 18, 2018
4037baf
Update CoreClr, PgoData to preview1-26718-05, master-20180718-0214, r…
dotnet-maestro-bot Jul 18, 2018
b2842bb
JIT: force all local var ref counts to be accessed via API (#18979)
AndyAyersMS Jul 18, 2018
c06c61a
Properly type morphed NEG nodes (#18837)
jakobbotsch Jul 18, 2018
965ad0c
Improve TimeSpan.ToString/TryFormat throughput for default format (#1…
stephentoub Jul 18, 2018
13386b8
Disable failing Ubuntu x86 jobs
BruceForstall Jul 18, 2018
f37214a
Basic .NET client tests (#18843)
AaronRobinsonMSFT Jul 19, 2018
e755679
Implement GetComObjectData and SetComObjectData (#18900)
hughbe Jul 19, 2018
a1c4e49
Update CoreClr to preview1-26719-01 (#19016)
dotnet-maestro-bot Jul 19, 2018
586bae9
Eliminate arm64 contract asserts (#19015)
noahfalk Jul 19, 2018
c7b1a09
Fix opinfo: InlineR should only read 8 bytes (#18801)
sunnycase Jul 19, 2018
660d904
Add MemoryMarshal.AsRef implementation (#19021)
jkotas Jul 19, 2018
07c4acd
Use mcontext_t instead of sigcontext (#18983)
Tragetaschen Jul 19, 2018
2ce5c5b
Merge pull request #19004 from BruceForstall/FixX86UbuntuJobs
BruceForstall Jul 19, 2018
1e169a2
Initial change to allow build wrappers and runtest.py
Jun 8, 2018
8becc50
Build xunit wrappers on unix
sbomer Jun 15, 2018
c941da3
Correctly generate TestEnv xplat
Jun 18, 2018
2c5684e
Build xunit wrappers using SDK
sbomer Jun 19, 2018
70bc3ed
Target netcoreapp2.0 in xunit wrappers
sbomer Jun 19, 2018
f47b5cb
Restore to packages directory for xunit wrappers
sbomer Jun 20, 2018
cdf84a2
Move common properties out to dir.common.props
sbomer Jun 27, 2018
7d0cf5e
Remove desktop-specific test wrapper csproj
sbomer Jun 27, 2018
8e7a792
Pass build os/arch/type and logsdir to msbuild from runtest.py
sbomer Jun 27, 2018
bbf695a
Remove xunit wrapper helper library from traversal build
sbomer Jun 28, 2018
b356e6c
Fix parameter passing in build-test.sh
sbomer Jun 28, 2018
5988418
Clean up factored .props files
sbomer Jun 28, 2018
3ebc16f
Undo runtest.sh changes
sbomer Jun 28, 2018
9e158c3
Use latest xunit console runner everywhere
sbomer Jun 28, 2018
3810b67
Remove extra StaticDependency on xunit.runner.console
sbomer Jun 28, 2018
13dd30d
Eliminate tests/src/dir.common.props, and rename dir.sdkbuild.props
sbomer Jun 29, 2018
9f84fa0
Reintroduce dir.sdkbuild.props as a place for SDK-only props
sbomer Jun 29, 2018
f4d77a3
Add xml namespace to dir.common.props
sbomer Jun 29, 2018
2cd3a29
Satisfy xunit analyzer
sbomer Jun 29, 2018
a008821
Satisfy xunit analyzer again
sbomer Jun 29, 2018
4aa2ebe
Use SDK msbuild to build wrappers
sbomer Jul 3, 2018
aebec3c
Remove Microsoft.CSharp.Core.targets workaround
sbomer Jul 6, 2018
eb34929
Remove UseRoslynCompilers prop and unify roslyn import
sbomer Jul 6, 2018
baf4a2c
Don't copy xunit dlls to corefx test host
sbomer Jul 11, 2018
5a0d529
Don't pass run.exe arguments through build-test.cmd in test pipeline
sbomer Jul 13, 2018
ecc9e0c
Fix parameter passing of priority arg in build-test.cmd
sbomer Jul 13, 2018
5b26fc6
Fix parameter passing of unprocessed args in build-test.cmd
sbomer Jul 15, 2018
e511c12
Pass TargetsWindowsArg to wrapper build in build-test.cmd
sbomer Jul 17, 2018
f167a4a
Pass BuildTestsAgainstPackages arg to exclude unix tests
sbomer Jul 19, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion BuildToolsVersion.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.2.0-preview1-02829-01
2.2.0-preview1-03013-03
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ set(VM_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/vm)
set(GENERATED_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/src/inc)
set(GENERATED_EVENTING_DIR ${CMAKE_CURRENT_BINARY_DIR}/eventing)
set(VERSION_FILE_PATH "${CMAKE_BINARY_DIR}/version.cpp")
set(PAL_REDEFINES_FILE ${CMAKE_CURRENT_SOURCE_DIR}/src/dlls/mscordac/palredefines.S)

set(CORECLR_SET_RPATH ON)
if(CORECLR_SET_RPATH)
Expand Down
2 changes: 1 addition & 1 deletion Documentation/botr/clr-abi.md
Original file line number Diff line number Diff line change
Expand Up @@ -603,7 +603,7 @@ JIT32 only generates one epilog (and causes all returns to branch to it) when th

# Synchronized Methods

JIT32/RyuJIT only generates one epilog (and causes all returns to branch to it) when a method is synchronized. See `Compiler::fgAddSyncMethodEnterExit()`. The user code is wrapped in a try/finally. Outside/before the try body, the code initializes a boolean to false. `CORINFO_HELP_MON_ENTER` or `CORINFO_HELP_MON_ENTER_STATIC` are called, passing the lock object (the "this" pointer for instance methods or the Type object for static methods) and the address of the boolean. If the lock is acquired, the boolean is set to true (as an 'atomic' operation in the sense that a Thread.Abort/EH/GC/etc. cannot interrupt the Thread when the boolean does not match the arquired state of the lock). JIT32/RyuJIT follows the exact same logic and arguments for placing the call to `CORINFO_HELP_MON_EXIT` / `CORINFO_HELP_MON_EXIT_STATIC` in the finally.
JIT32/RyuJIT only generates one epilog (and causes all returns to branch to it) when a method is synchronized. See `Compiler::fgAddSyncMethodEnterExit()`. The user code is wrapped in a try/finally. Outside/before the try body, the code initializes a boolean to false. `CORINFO_HELP_MON_ENTER` or `CORINFO_HELP_MON_ENTER_STATIC` are called, passing the lock object (the "this" pointer for instance methods or the Type object for static methods) and the address of the boolean. If the lock is acquired, the boolean is set to true (as an 'atomic' operation in the sense that a Thread.Abort/EH/GC/etc. cannot interrupt the Thread when the boolean does not match the acquired state of the lock). JIT32/RyuJIT follows the exact same logic and arguments for placing the call to `CORINFO_HELP_MON_EXIT` / `CORINFO_HELP_MON_EXIT_STATIC` in the finally.

# Rejit

Expand Down
2 changes: 1 addition & 1 deletion Documentation/botr/dac-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ In addition to pointer types, the DAC must also marshal static and global values

The TADDR and PCODE types we introduced in the example of DAC operation are pure target addresses. These are actually integer types, rather than pointers. This prevents code in the host from incorrectly dereferencing them. The DAC does not treat them as pointers either. Specifically, because we have no type or size information no dereferencing or marshalling can occur. We use these primarily in two situations: when we are treating a target address as pure data and when we need to do pointer arithmetic with target addresses (although we can also do pointer arithmetic with PTR types). Of course, because TADDRs have no type information for the target locations they specify, when we perform address arithmetic, we need to factor in the size explicitly.

We also have one special class of PTRs that don't involve marshaling: PTR\_VOID and PTR\_CVOID. These are the target equivalents of void \* and const void \*, respectively. Because TADDRs are simply numbers, they don't have pointer semantics, which means that if we DACize code by converting void \* to TADDR (as was often the case in the past), we often need extra casts and other changes, even in code that does not compile for the DAC. Using PTR\_VOID makes it easier and cleaner to DACize code that uses void \* by preserving the semantics expected for void \*. If we DACize a function that uses PTR\_VOID or PTR\_CVOID, we can't directly marshal data from these addresses, since we have no idea how much data we would need to read. This means we can't dereference them (or even do pointer aritmetic), but this is identical to the semantics of void \*. As is the case for void \*, we generally cast them to a more specific PTR type when we need to use them. We also have a PTR\_BYTE type, which is a standard marshaled target pointer (that supports pointer arithmetic, etc.). In general, when we DACize code, void \* becomes PTR\_VOID and BYTE \* becomes PTR\_BYTE, just as you would expect. [daccess.h][daccess.h] has explanatory comments that provide more details about the use and semantics of the PTR\_VOID type.
We also have one special class of PTRs that don't involve marshaling: PTR\_VOID and PTR\_CVOID. These are the target equivalents of void \* and const void \*, respectively. Because TADDRs are simply numbers, they don't have pointer semantics, which means that if we DACize code by converting void \* to TADDR (as was often the case in the past), we often need extra casts and other changes, even in code that does not compile for the DAC. Using PTR\_VOID makes it easier and cleaner to DACize code that uses void \* by preserving the semantics expected for void \*. If we DACize a function that uses PTR\_VOID or PTR\_CVOID, we can't directly marshal data from these addresses, since we have no idea how much data we would need to read. This means we can't dereference them (or even do pointer arithmetic), but this is identical to the semantics of void \*. As is the case for void \*, we generally cast them to a more specific PTR type when we need to use them. We also have a PTR\_BYTE type, which is a standard marshaled target pointer (that supports pointer arithmetic, etc.). In general, when we DACize code, void \* becomes PTR\_VOID and BYTE \* becomes PTR\_BYTE, just as you would expect. [daccess.h][daccess.h] has explanatory comments that provide more details about the use and semantics of the PTR\_VOID type.

Occasionally, legacy code stores a target address in a host pointer type such as void \*. This is always a bug and makes it extremely difficult to reason about the code. It will also break when we support cross-platform, where the pointer types are different sizes). In DAC builds, the void \* type is a host pointer which should never contain a target address. Using PTR\_VOID instead allows us to indicate that a void pointer type is a target address. We are trying to eliminate all such uses, but some are quite pervasive in the code and will take a while to eliminate entirely.

Expand Down
24 changes: 11 additions & 13 deletions Documentation/botr/intro-to-clr.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,19 +53,17 @@ It is this dedication to ease of use (which goes hand in hand with simplicity of

The runtime has many features, so it is useful to categorize them as follows:

1. Fundamental features – Features that have broad impact on the design of other features. These include:
a. Garbage Collection
b. Memory Safety and Type Safety
c. High level support for programming languages.

2. Secondary features – Features enabled by the fundamental features that may not be required by many useful programs:
a. Program isolation with AppDomains
b. Program Security and sandboxing

3. Other Features – Features that all runtime environments need but that do not leverage the fundamental features of the CLR. Instead, they are the result of the desire to create a complete programming environment. Among them are:
a. Versioning
b. Debugging/Profiling
c. Interoperation
1. **Fundamental features** – Features that have broad impact on the design of other features. These include:
1. Garbage Collection
2. Memory Safety and Type Safety
3. High level support for programming languages.
2. **Secondary features** – Features enabled by the fundamental features that may not be required by many useful programs:
1. Program isolation with AppDomains
2. Program Security and sandboxing
3. **Other Features** – Features that all runtime environments need but that do not leverage the fundamental features of the CLR. Instead, they are the result of the desire to create a complete programming environment. Among them are:
1. Versioning
2. Debugging/Profiling
3. Interoperation

## The CLR Garbage Collector (GC)

Expand Down
2 changes: 1 addition & 1 deletion Documentation/building/crossgen.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ Using native images
-------------------

Running CrossGen on an assembly creates a "native image" file, with the extension of `.ni.dll` or `.ni.exe`.
You should include the native images in your app, either by replacing the original MSIL assmblies with the native images, or by putting the native images next to the MSIL assemblies.
You should include the native images in your app, either by replacing the original MSIL assemblies with the native images, or by putting the native images next to the MSIL assemblies.
When the native images are present, CoreCLR runtime will automatically use it instead of the original MSIL assemblies.

Common errors
Expand Down
44 changes: 39 additions & 5 deletions Documentation/building/linux-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,19 @@ In order to get clang-3.9, llvm-3.9 and lldb-3.9 on Ubuntu 14.04, we need to add
~$ wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
~$ sudo apt-get update

Note: arm clang has a known issue with CompareExchange (#15074), so for arm you have to use clang-4.0 or higher, the official build uses clang-5.0.

Note: ARM clang has a known issue with CompareExchange
([#15074](https://github.com/dotnet/coreclr/issues/15074)), so for ARM you must
use clang-4.0 or higher. Moreover, when building with clang-5.0, the
following errors occur:

```
coreclr/src/debug/inc/arm/primitives.h:66:1: error: __declspec attribute 'selectany' is
not supported [-Werror,-Wignored-attributes]
```

This is fixed in clang-5.0.2, which can be installed from the apt
repository listed below.

For other version of Debian/Ubuntu, please visit http://apt.llvm.org/.

Then install the packages you need:
Expand Down Expand Up @@ -98,9 +109,32 @@ After the build is complete you will be able to find the output in the `bin` fol
Build for ARM/Linux
===================

Libunwind-arm requires fixes that are not included in Ubuntu 14.04, yet. The fix allows libunwind-arm not to break when it is ordered to access unaccessible memory locations.
The CI system and official builds use Docker to build ARM for Linux (for example, see the latest build [here](https://ci.dot.net/job/dotnet_coreclr/job/master/job/arm_cross_checked_ubuntu/lastSuccessfulBuild/consoleText)). The Docker container has pre-built rootfs directories containing the required tools. To build this way, do the following:

* Install Docker, probably Community Edition, on Windows, Mac, or Linux, from https://www.docker.com/. Some useful post-install setup is:
* Linux: add your user to the docker group, this will avoid running docker with `sudo`:

`sudo usermod -a <your account name> -G docker`

* Windows: switch to Linux containers. This can be done by right clicking on the Docker icon in the lower right corner and clicking "Switch to Linux containers".
* Build using the Docker container (this is a `bash` script, for simplicity):

```
ROOT=/Users/me/git/coreclr
DOCKER_ARGS="run -i --rm -v ${ROOT}:/mnt/coreclr -w /mnt/coreclr -e ROOTFS_DIR=/crossrootfs/arm -e CAC_ROOTFS_DIR=/crossrootfs/x86 microsoft/dotnet-buildtools-prereqs:ubuntu-14.04-cross-e435274-20180426002420"
docker ${DOCKER_ARGS} /mnt/coreclr/build.sh arm checked cross crosscomponent
docker ${DOCKER_ARGS} /mnt/coreclr/build-test.sh arm checked cross generatelayoutonly
```

Make sure you update the `ROOT` environment to point to your git clone of the coreclr repo.

The current Docker tag being used by the CI can be found in the `getDockerImageName` function in the [netci.groovy](https://github.com/dotnet/coreclr/blob/master/netci.groovy) file.

Libunwind issue
---------------
ARM libunwind versions before 1.3 require a fix. The fix allows libunwind not to break when it is ordered to access unaccessible memory locations. See [this](https://github.com/dotnet/coreclr/pull/3923) issue for history.

First, import the patch from the libunwind upstream: http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=commit;h=770152268807e460184b4152e23aba9c86601090
If required, first import the patch from the libunwind upstream: http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=commit;h=770152268807e460184b4152e23aba9c86601090.

Then, expand the coverage of the upstream patch by:

Expand All @@ -124,7 +158,7 @@ index 1ed3dbf..c643032 100644
```

Additional optimization levels for ARM/Linux: -Oz and -Ofast
============================================================
------------------------------------------------------------

This instruction is to enable additional optimization levels such as -Oz and -Ofast on ARM/Linux. The below table shows what we have to enable for the code optimization of the CoreCLR run-time either the size or speed on embedded devices.

Expand Down
73 changes: 43 additions & 30 deletions Documentation/building/test-configuration.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,54 @@
## General Test Infrastructure Notes ##
# General Test Infrastructure

### Kinds of Build Properties ###
* Build Only
> `<CLRTestKind>BuildOnly</CLRTestKind>`

* Builds an executable.
* Will not execute it.
## Test "Kind"

* Build Only
* Builds an executable.
* Will not execute.
* e.g. `<CLRTestKind>BuildOnly</CLRTestKind>`
* Run Only
> `<CLRTestKind>RunOnly</CLRTestKind>`
* Can use output of `BuildOnly` or `BuildAndRun` projects with different command line arguments.
* e.g. `<CLRTestKind>RunOnly</CLRTestKind>`
* Build And Run
* Builds an executable.
* Will execute said executable.
* e.g. `<CLRTestKind>BuildAndRun</CLRTestKind>`
* Shared Libraries
* For building libraries common to zero or more tests.
* e.g. `<CLRTestKind>SharedLibrary</CLRTestKind>`

* Can use Ouput of Build and Run Project with different command line arguments.
* Build and Run
> `<CLRTestKind>BuildAndRun</CLRTestKind>`
By default (i.e. if not specified explicitly), test "Kind" is `BuildAndRun`.

* Builds an executable.
* Will execute said executable.
* Shared Libraries
> `<CLRTestKind>SharedLibrary</CLRTestKind>`
## Priority

Test cases are categorized by priority level. The most important subset should be and is the smallest subset. This subset is called priority 0.

* For building libraries common to zero or more tests.
* By default, a test case is priority 0. Tests must be explicitly de-prioritized.
* Set the priority of a test by setting the property `<CLRTestPriority>` in the test's project file.
* e.g. `<CLRTestPriority>2</CLRTestPriority>`
* Lower priority values are always run in conjunction when running higher priority value tests.
* i.e. if a developer elects to do a priority 2 test run, then all priority 0, 1 and 2 tests are run.

## Adding Test Guidelines

By default (i.e. if not specified explicitly) a project file is BuildAndRun.
* All test source files should include the following banner:
```
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
```
* Disable building of a test by conditionally setting the `<DisableProjectBuild>` property.
* e.g. `<DisableProjectBuild Condition=" '$(Platform)' == 'arm64' ">true</DisableProjectBuild>`
* Add NuGet/MyGet references by updating the following [project file](https://github.com/dotnet/coreclr/blob/master/tests/src/Common/test_dependencies/test_dependencies.csproj).
* Build against the `mscorlib` facade by adding `<ReferenceLocalMscorlib>true</ReferenceLocalMscorlib>` to the test project.

### Priority ###
Testcases are categorized by their priority levels. The most important subset should be and is the smallest subset. This subset is called priority 0.
* By default, a testcase is priority 0. You must elect to de-prioritize a test.
* To de-prioritize a test, add a property _CLRTestPriority_ to the test's project file.
> `<CLRTestPriority>2</CLRTestPriority>`
* Lower priority values are always run in conjunction when running higher priority value tests. I.e. if a developer elects to do a priority 2 test run, then all priority 0, 1 and 2 tests are run.
### Creating a new C# test project

### Adding Tests ###
#### Converting an existing C# project ####
* Remove AssemblyName
* Swap in dir.props
* Swap in dir.targets
* Assign a CLRTestKind
* (optional) Assign a priority value
**TODO**

### Converting an existing C# project
* Remove the `<AssemblyName>` property
* Import `dir.props`
* Import `dir.targets`
* Assign a `<CLRTestKind>`
* (optional) Assign a priority value
Loading