Alexander Köplinger [Mon, 25 Jul 2016 21:44:37 +0000 (23:44 +0200)]
[ci] Fix typo in run-jenkins.sh
Alexander Kyte [Mon, 25 Jul 2016 20:32:29 +0000 (16:32 -0400)]
Merge pull request #3324 from alexanderkyte/threads_unhandled_exc
[runtime] Call unhandled exception handler explicitly to fix for bitcode
Alexander Köplinger [Mon, 25 Jul 2016 20:31:05 +0000 (22:31 +0200)]
[acceptance-tests] Remove folders from Roslyn script that we now ship after
8f130a6e17c372
Alexander Köplinger [Mon, 25 Jul 2016 20:05:02 +0000 (22:05 +0200)]
[ci] Move acceptance-tests script from Jenkins into the repo
Yay, less state on Jenkins!
Alexander Köplinger [Mon, 25 Jul 2016 19:02:24 +0000 (21:02 +0200)]
Bump Mono version to 4.7.0
Alexander Kyte [Sat, 23 Jul 2016 06:41:11 +0000 (02:41 -0400)]
[runtime] Call unhandled exception handler explicitly to fix for bitcode
Alexander Kyte [Mon, 25 Jul 2016 16:02:07 +0000 (12:02 -0400)]
Merge pull request #3325 from alexanderkyte/fix_bitcode_mini
[mobile_static] Pass correct MONO_LLVMONLY for bitcode script
Alexander Köplinger [Mon, 25 Jul 2016 12:05:16 +0000 (14:05 +0200)]
[bcl] Implement System.Text.Encoding.CodePages.CodepagesEncodingProvider in the facade
Alexander Köplinger [Mon, 25 Jul 2016 10:32:13 +0000 (12:32 +0200)]
Fix Windows build broken in
2c061c18852
Zoltan Varga [Sun, 24 Jul 2016 21:19:27 +0000 (17:19 -0400)]
[runtime] Implement the GC domain finalization event using conditional variables instead of an io-layer event. (#3316)
Alexander Kyte [Sun, 24 Jul 2016 06:46:23 +0000 (02:46 -0400)]
[mobile_static] Pass correct MONO_LLVMONLY for bitcode
Zoltan Varga [Fri, 22 Jul 2016 22:25:59 +0000 (18:25 -0400)]
[runtime] Abort instead of stopping background threads on shutdown. Hopefully fixes #41644. (#3323)
Martin Baulig [Wed, 20 Jul 2016 21:06:03 +0000 (17:06 -0400)]
[System]: Fix SystemCertificateValidator.EvaluateSystem() on Android. Fixes #41290.
After the latest code changes, we may land here with `errors == SslPolicyErrors.None`,
so we need to make sure that we actually set it to `RemoteCertificateChainErrors` if
the system validator returns an error.
(cherry picked from commit
b4304354b149334e5ddd11c4c143aac64f46fe03)
Alexander Köplinger [Fri, 22 Jul 2016 12:20:45 +0000 (14:20 +0200)]
Merge pull request #3318 from akoeplinger/cleaner-mini-nunit
[mini] Explicitly turn nunit output on or off based on variable
Alexander Köplinger [Thu, 21 Jul 2016 23:46:28 +0000 (01:46 +0200)]
Merge pull request #3319 from akoeplinger/fix-mono.csharp
[Mono.CSharp] Fix test .sources to include ASTVisitorTest.cs
João Matos [Thu, 21 Jul 2016 23:44:38 +0000 (00:44 +0100)]
Merge pull request #3322 from grendello/offsets-tool-xa
Modify the offsets dumper to work with Xamarin.Android
Vlad Brezae [Thu, 21 Jul 2016 23:15:28 +0000 (02:15 +0300)]
[sgen] Fix build
Marek Habersack [Thu, 21 Jul 2016 22:35:17 +0000 (00:35 +0200)]
Modify the offsets dumper to work with Xamarin.Android
This is a handful of quick and dirty changes to make the utility
work with Xamarin.Android which uses a different directory layout
than monodroid.
Rodrigo Kumpera [Thu, 21 Jul 2016 22:35:06 +0000 (15:35 -0700)]
Merge pull request #3289 from BrzVlad/fix-critical-finalizer
[sgen] Fix critical/normal finalization order at domain unload
Rodrigo Kumpera [Thu, 21 Jul 2016 22:34:41 +0000 (15:34 -0700)]
Merge pull request #3321 from BrzVlad/fix-block-state-membar
[sgen] Add missing memory barrier
Rodrigo Kumpera [Thu, 21 Jul 2016 22:32:18 +0000 (15:32 -0700)]
Merge pull request #3290 from BrzVlad/fix-finalizer-tests
[tests] Fix finalizer tests
Alexander Köplinger [Thu, 21 Jul 2016 20:30:47 +0000 (22:30 +0200)]
[mini] Explicitly turn nunit output on or off based on variable
Alternative implementation to
8f092147bb604485c78c80b9781536ec995d51fe.
In CI we explicitly pass EMIT_NUNIT=1 and check-seq-points to generate the nunit xml and run the tests,
locally those are omitted. This avoids needing to sniff for Jenkins/Wrench variables.
Same for
a9eec21d62ecd1da3929cdbfea872bfc4d22134b, but we already pass V=1 in Jenkins.
Vlad Brezae [Thu, 21 Jul 2016 21:43:40 +0000 (00:43 +0300)]
[sgen] Add missing memory barrier
When doing the first phase of sweeping we tag the block pointer within the block list with a CAS, after which we own the block and we are free to update the state and do sweep computations on the block. When we finish this phase we directly write the untagged block pointer back in the list, making the block available to inspect by other threads. We need a write barrier before writting the untagged pointer back because, when another thread might acquire the block, it might encounter an invalid block state.
Zoltan Varga [Thu, 21 Jul 2016 22:12:15 +0000 (18:12 -0400)]
[runtime] Decrease the verbosity of the runtime test runner when not running under CI.
Alexander Köplinger [Thu, 21 Jul 2016 20:57:21 +0000 (22:57 +0200)]
[Mono.CSharp] Fix test .sources to include ASTVisitorTest.cs
I noticed this while looking at why Mono.CSharp is registered as "crashed" in the the new
fullaot PR job on Jenkins. It turns out all tests were excluded in mobile_static which means
no NUnit xml was produced and that is exactly what the script then interprets as a crash.
I saw that ASTVisitorTest.cs was not included in the net_4_x tests as well, likely inadvertently.
It got bitrotten over the years so I had to fix it up a bit, now it compiles/runs on mobile_static as well.
Zoltan Varga [Thu, 21 Jul 2016 19:44:01 +0000 (15:44 -0400)]
[ji] Run the mini tests without the emitnunit.pl script when not running under CI.
Alexander Köplinger [Thu, 21 Jul 2016 17:49:26 +0000 (19:49 +0200)]
[versions.mk] Make path to SUBMODULES.json based on srcdir (#3314)
Since acceptance-tests/Makefile (and llvm/Makefile) include scripts/submodules/versions.mk which evals versions.py which looks
for a SUBMODULES.json file in the current working directory we got confusing error messages if the build directory is not the src dir:
```
Traceback (most recent call last):
File "../../mono/scripts/submodules/versions.py", line 22, in <module>
submodules = json.load(open(CONFIG_FILE))
IOError: [Errno 2] No such file or directory: 'SUBMODULES.json'
```
Instead we now pass the path to SUBMODULES.json as a variable to versions.py and set it based on $(top_srcdir) so it works
even for out-of-tree builds.
Alexander Kyte [Thu, 21 Jul 2016 17:49:15 +0000 (13:49 -0400)]
[runtime] Make AOT'ed TestDriver.dll dependency for builds (#3303)
Rodrigo Kumpera [Thu, 21 Jul 2016 17:48:34 +0000 (10:48 -0700)]
[mini] Fail methods that try to throw scalars. Fix hard crash from #42417. (#3312)
Alexander Kyte [Thu, 21 Jul 2016 17:47:19 +0000 (13:47 -0400)]
[mobile_static] Use clang++ for the linker (#3308)
In order for our exception handling to work on linux, we need the
unwind-dw2-fde-dip implementation in libgcc to work with our
.o file. This requires that `--eh-frame-hdr` be passed by the linker.
By using clang++ as the linker, we will get this and other flags
necessary for correct interop with c++ libraries.
Marcos Henrich [Thu, 21 Jul 2016 11:43:26 +0000 (12:43 +0100)]
Merge pull request #3305 from esdrubal/response_stream_close
[System] Fix RequestCanceled ex on ResponseStream.Close
Rodrigo Kumpera [Thu, 21 Jul 2016 00:58:12 +0000 (17:58 -0700)]
Merge pull request #3306 from kumpera/fix_wait
[wapi] Fix timed wait code to not overflow. Fixes #42688
Alexander Kyte [Wed, 20 Jul 2016 20:08:09 +0000 (16:08 -0400)]
[runtime] Only add Mono.Dynamic.Interpreter to mobile_static (#3302)
Alexander Kyte [Wed, 20 Jul 2016 19:18:38 +0000 (15:18 -0400)]
Merge pull request #3307 from alexanderkyte/aot_path
[mobile_static] Fix temp path for mcs/class AOT
Alexander Kyte [Tue, 12 Jul 2016 17:26:06 +0000 (13:26 -0400)]
[mobile_static] Fix temp path for mcs/class AOT
Rodrigo Kumpera [Wed, 20 Jul 2016 17:41:15 +0000 (10:41 -0700)]
[wapi] Fix timed wait code to not overflow. Fixes #42688
Wait math must always subtract ticks and get deltas. That way we avoid overflows.
Marcos Henrich [Wed, 20 Jul 2016 16:11:30 +0000 (17:11 +0100)]
[System] Fix RequestCanceled ex on ResponseStream.Close
Fixes issues where ResponseStream.Close would throw an exception when
peer had already closed the connection and ResponseStream.Close would
still try to communicating to peer that it was closing.
The issue was brought to our attention by failures on:
- MonoTests.System.Net.WebRequestTest.TestReceiveCancelation
- MonoTests.System.Net.HttpWebRequestTest.TestLargeDataReading
Zoltan Varga [Wed, 20 Jul 2016 16:17:38 +0000 (12:17 -0400)]
[amd64] Rewrite the handler block trampoline to use normal calls instead of jumps so the functions called from the calls execute with an aligned stack.
Zoltan Varga [Wed, 20 Jul 2016 16:15:28 +0000 (12:15 -0400)]
[tests] Disable some more tests in the mobile_static profile.
Zoltan Varga [Wed, 20 Jul 2016 15:26:00 +0000 (11:26 -0400)]
[runtime] Add a missing mono_error_init () in a DISABLE_APPDOMAINS codepath.
Zoltan Varga [Wed, 20 Jul 2016 12:00:11 +0000 (08:00 -0400)]
[amd64] Fix stack alignment in the handler block trampoline.
Vlad Brezae [Thu, 14 Jul 2016 00:55:51 +0000 (03:55 +0300)]
[tests] Remove double inclusion of source file
Vlad Brezae [Thu, 14 Jul 2016 00:41:01 +0000 (03:41 +0300)]
[tests] Fix flakiness on some tests that assume object finalization
A common pattern that we use across the test suite is to create objects on a new thread, join the thread, collect then expect certain objects to be dead/finalized since we assumed that thread to be no longer a source of pinning. This is not always the case since, after joining, the thread might still be alive and running unmanaged code related to the thread shutdown, which can reuse the stack that previously contained the managed references.
The workaround is to still allocate objects far down the stack, even if we are on a separate thread.
At the moment the helper can be used in tests which run under the TestDriver (since it's included in TestDriver.dll) and can also be included as a helper source for test bcl classes that need it.
Rodrigo Kumpera [Wed, 20 Jul 2016 07:06:56 +0000 (00:06 -0700)]
Merge pull request #3304 from kumpera/unlimited-abort
Change suspend abort timeout to infinite and fix timeout env
Marek Safar [Wed, 20 Jul 2016 05:18:55 +0000 (22:18 -0700)]
Revert "[Facades] Add System.Runtime.InteropServices.PInvoke"
This reverts commit
6d13f594fa39a4d7dedeab278192d48c5b563fa9.
Marek Safar [Wed, 20 Jul 2016 05:13:42 +0000 (22:13 -0700)]
[Facades] Add System.Runtime.InteropServices.PInvoke
Rodrigo Kumpera [Wed, 20 Jul 2016 01:06:53 +0000 (18:06 -0700)]
[mono-threads] Change suspend abort timeout to infinite and fix timeout env var parsing.
Rodrigo Kumpera [Wed, 20 Jul 2016 01:05:37 +0000 (18:05 -0700)]
[utils] Introduce MONO_INFINITE_WAIT instead of checking for -1 all over the place.
Alexander Köplinger [Wed, 20 Jul 2016 01:03:13 +0000 (03:03 +0200)]
Merge pull request #3300 from esdrubal/mono-sym-fixes
[mono-symbolicate] Fixes symbolicate.expected
Zoltan Varga [Tue, 19 Jul 2016 23:09:46 +0000 (19:09 -0400)]
[tests] Disable tests which are expected to fail in the mobile_static profile.
Alexander Köplinger [Tue, 19 Jul 2016 23:03:41 +0000 (01:03 +0200)]
Revert "[test] Mono.Debugger.Soft test for async I/O tasks"
This reverts commit
cf94a6fcd4e5f7c1fe065ceb3d8852e7a2f19e60.
It seems this causes something that prevents the chroot from unmounting in the Linux builds on Jenkins,
resulting in an endless "can't unmount" loop and stuck builds. Reverting to see if this fixes it.
Zoltan Varga [Tue, 19 Jul 2016 21:52:46 +0000 (17:52 -0400)]
[jit] Add full aot support for handler block trampolines on amd64.
Zoltan Varga [Tue, 19 Jul 2016 20:49:30 +0000 (16:49 -0400)]
[jit] Avoid aborting if mono_ldtoken_checked () fails in one place.
Zoltan Varga [Tue, 19 Jul 2016 20:44:26 +0000 (16:44 -0400)]
[aot] Fix full-aot support for delegate virtual invokes.
Vlad Brezae [Fri, 15 Jul 2016 10:22:04 +0000 (13:22 +0300)]
[sgen] Fix critical/normal finalization order at domain unload
For objects that die at the same time, normal finalizers should be run before critical finalizers. When we were unloading a domain we were running finalizers for all objects in that domain without checking whether the finalizer is critical or not. Now we enqueue the objects first in the finalization queues so we can run all the normal finalizers before the critical ones.
Zoltan Varga [Tue, 19 Jul 2016 18:11:30 +0000 (14:11 -0400)]
[runtime] Reset the thread_info TLS key if thread registration fails.
Alexander Kyte [Fri, 8 Jul 2016 22:40:02 +0000 (18:40 -0400)]
[runtime] Fix leak in generic sharing
Alexander Kyte [Fri, 8 Jul 2016 18:15:52 +0000 (14:15 -0400)]
[sgen/mono] Don't leak stack info struct
Marcos Henrich [Tue, 19 Jul 2016 17:04:34 +0000 (18:04 +0100)]
[mono-symbolicate] Fixes symbolicate.expected
Make all file locations in symbolicate.expected relative to mono
repository base directory.
Aleksey Kliger (λgeek) [Tue, 19 Jul 2016 16:42:42 +0000 (12:42 -0400)]
Merge pull request #3294 from lambdageek/dev/fix-42625
[threadpool-ms] Switch to GC Safe mode in event_wait backends
Marcos Henrich [Tue, 19 Jul 2016 13:47:33 +0000 (14:47 +0100)]
Merge pull request #3283 from esdrubal/mono-sym-docs
Update mono-symbolicate README and man
Marcos Henrich [Tue, 19 Jul 2016 13:43:03 +0000 (14:43 +0100)]
Merge pull request #3293 from esdrubal/mono-sym-fixes
Mono sym fixes
Zoltan Varga [Tue, 19 Jul 2016 11:58:56 +0000 (07:58 -0400)]
[tests] Make some tests work with full-aot.
Marcos Henrich [Thu, 14 Jul 2016 11:39:19 +0000 (12:39 +0100)]
Updated mono-symbolicate man.
Marcos Henrich [Thu, 14 Jul 2016 09:28:53 +0000 (10:28 +0100)]
Updated mono-symbolicate README
Updated mono-symbolicate usage.
Added practical example.
Renamed mono-symbolicate README to README.md
Marcos Henrich [Tue, 19 Jul 2016 09:40:31 +0000 (10:40 +0100)]
[mono-symbolicate] Fixes Directory Exists/Delete race condition.
Marcos Henrich [Mon, 18 Jul 2016 14:05:45 +0000 (15:05 +0100)]
[mono-symbolicate] Add mscorlib stacktrace to tests
BCL symbols are now added to tests symbol directories.
We now test a stacktrace with stackframes on mscorlib.
Marcos Henrich [Mon, 18 Jul 2016 14:00:21 +0000 (15:00 +0100)]
[mono-symbolicate] Fixed options/command logic.
Options are now parsed before comand store-symbols.
Johan Lorensson [Tue, 19 Jul 2016 08:26:06 +0000 (10:26 +0200)]
Merge pull request #3297 from lateralusX/jlorenss/win-x64-fix-pinvoke-failures
Fixing 4 failing pinvoke tests in runtime test suite on windows x64.
lateralusX [Tue, 19 Jul 2016 00:40:33 +0000 (02:40 +0200)]
Fixing 4 failing pinvoke tests in runtime test suite on windows x64.
Fix for the following failing pinvoke tests in runtime tests suite on win x64:
* pinvoke11.exe
* winx64structs.exe
* pinvoke_ppcs.exe
* pinvoke_ppcc.exe
Aleksey Kliger [Mon, 18 Jul 2016 23:53:50 +0000 (19:53 -0400)]
[test] Mono.Debugger.Soft test for async I/O tasks
Alexander Kyte [Mon, 18 Jul 2016 23:38:50 +0000 (19:38 -0400)]
Merge pull request #3092 from alexanderkyte/mobile_static_fix_runtime_tests
[mobile_static] Get mono/tests running on mobile_static
Alexander Köplinger [Mon, 18 Jul 2016 22:51:48 +0000 (00:51 +0200)]
Merge pull request #3295 from mhutch/fix-pcl-build
[xbuild] Fix PCL build
Zoltan Varga [Mon, 18 Jul 2016 22:41:19 +0000 (18:41 -0400)]
[llvm] Add mono_llvm_set_call_notail () helper function, not yet used.
Zoltan Varga [Mon, 18 Jul 2016 22:40:58 +0000 (18:40 -0400)]
[llvm] Mark as the OBJC_METHOD_VAR_NAME/OBJC_SELECTOR_REFERENCES globals as used to prevent llvm from optimizing them away.
Zoltan Varga [Mon, 18 Jul 2016 22:37:45 +0000 (18:37 -0400)]
[llvm] Disable tail calls when using llvm 3.9.
Alexander Köplinger [Mon, 18 Jul 2016 20:53:44 +0000 (22:53 +0200)]
Fix tarball package build broken by
8f130a6e17c3729f32c3bf930941ab6587f6fe38
- Microsoft.WebApplication.targets was inadvertently removed.
- The new Microsoft.NuGet.Build.Tasks assembly sources were not getting dist'ed. Adding to DIST_ONLY_SUBDIRS fixes this for now,
though we can maybe add it to SUBDIRS instead (but neither me nor Marek know for what exactly that's used)
Mikayla Hutchinson [Mon, 18 Jul 2016 20:39:52 +0000 (16:39 -0400)]
[xbuild] Fix %Identity issues
Identity metadata is the exact, unmodified ItemSpec.
Mikayla Hutchinson [Mon, 18 Jul 2016 19:20:56 +0000 (15:20 -0400)]
[xbuild] Update PCL targets
Mikayla Hutchinson [Mon, 18 Jul 2016 18:47:59 +0000 (14:47 -0400)]
[xbuild] Framework path should have trailing slash
Vlad Brezae [Mon, 18 Jul 2016 20:45:31 +0000 (23:45 +0300)]
Merge pull request #3280 from BrzVlad/fix-stw-stack-start
[sgen] Initialize stack_start to 0 when a thread is signaled for stw
Zoltan Varga [Mon, 18 Jul 2016 20:13:08 +0000 (16:13 -0400)]
[llvm] Add a workaround for 3.9 based llvm versions using 'x15' as the location of the rgctx argument on arm64 even through it is reserved.
Zoltan Varga [Mon, 18 Jul 2016 20:12:14 +0000 (16:12 -0400)]
[jit] Save/restore cfg->ip during inlining, so instructions emitted after a failed inline have the correct il offset.
Alexander Kyte [Mon, 18 Jul 2016 20:04:17 +0000 (16:04 -0400)]
Merge pull request #3132 from alexanderkyte/libmono_safe_undefined
[runtime] Make mini still build when -no-undefined given
Alexander Kyte [Mon, 18 Jul 2016 19:48:56 +0000 (15:48 -0400)]
[runtime] Don't build mobile_static on default preset, don't know which configuration to use
Alexander Kyte [Fri, 15 Jul 2016 20:37:00 +0000 (16:37 -0400)]
[runtime] Disable tests for AOT that require on unsupported runtime features
Alexander Kyte [Fri, 15 Jul 2016 16:32:47 +0000 (12:32 -0400)]
[runtime] Hardcode preset feature disables
Alexander Kyte [Thu, 14 Jul 2016 21:58:36 +0000 (17:58 -0400)]
[mobile_static] Move PLATFORM_AOT_SUFFIX into configure.ac
Alexander Kyte [Fri, 17 Jun 2016 16:46:25 +0000 (12:46 -0400)]
[mobile_static] AOT libs not aoted by the test runner
Alexander Kyte [Fri, 17 Jun 2016 16:45:58 +0000 (12:45 -0400)]
[mobile_static] Skip all appdomain-related tests
Alexander Kyte [Thu, 16 Jun 2016 23:43:57 +0000 (19:43 -0400)]
[mobile_static] AOT assemblyresolve for tests
Alexander Kyte [Thu, 16 Jun 2016 23:06:46 +0000 (19:06 -0400)]
[mobile_static] Build mono/tests bitcode files in subdirectories to make threadsafe
Alexander Kyte [Thu, 16 Jun 2016 22:58:27 +0000 (18:58 -0400)]
[mobile_static] Skip appdomain tests on mobile_static
Alexander Kyte [Thu, 16 Jun 2016 21:38:55 +0000 (17:38 -0400)]
[mobile_static] Make test runner aot each assembly individually
Alexander Kyte [Tue, 7 Jun 2016 19:51:00 +0000 (15:51 -0400)]
[mobile_static] Skip mcs compiler tests for mobile_static
Alexander Kyte [Mon, 6 Jun 2016 14:52:19 +0000 (10:52 -0400)]
[mobile_static] Skip verifying ilasm.exe on mobile_static
ILASM.exe has features which a mobile_static runtime will not support.
It is invoked with an external mono when used in the runtime.
We skip it here because otherwise it will fail to verify.
Alexander Kyte [Fri, 27 May 2016 19:16:42 +0000 (15:16 -0400)]
[mobile_static] Configure mini fullaot tests to work with mobile_static
Alexander Kyte [Mon, 18 Jul 2016 17:50:29 +0000 (13:50 -0400)]
[mobile_static] Enable Mono.Simd namespace to fix mini tests
Alexander Kyte [Fri, 27 May 2016 17:56:02 +0000 (13:56 -0400)]
[mobile_static] Use mobile_static paths in mono/mini tests when necessary
Alexander Kyte [Wed, 1 Jun 2016 18:25:12 +0000 (14:25 -0400)]
[mobile_static] Blacklist mono/tests sgen tests for mobile_static