Aleksey Kliger (λgeek) [Tue, 31 May 2016 15:13:53 +0000 (11:13 -0400)]
Merge pull request #3067 from lambdageek/dev/monoerror-stringy
[runtime] Deal with MonoErrors from string_to_utf8_checked changes
lateralusX [Tue, 31 May 2016 14:32:40 +0000 (16:32 +0200)]
Merge pull request #3059 from lateralusX/jlorenss/win-x64-dyncall-gsharedvt-support
[aot] Added support for GSHAREDVT and DYNCALL on Windows x64 for full AOT builds.
Alexander Köplinger [Tue, 31 May 2016 14:06:41 +0000 (16:06 +0200)]
Merge pull request #3076 from akoeplinger/fix-ziptime-offbyone
[WindowsBase] Fix off-by-one error in ZipTime
Alexander Köplinger [Tue, 31 May 2016 09:59:49 +0000 (11:59 +0200)]
[WindowsBase] Fix off-by-one error in ZipTime
The date/time struct in zip.h defines the month value as
uInt tm_mon; /* months since January - [0,11] */
.NET's DateTime object in turn stores months from 1-12. We didn't
take this into account when passing the values from managed->native
so the month ended up being off by one.
We didn't use this codepath before https://github.com/mono/mono/pull/3036
that's why it didn't show up until now.
Marek Safar [Tue, 31 May 2016 11:44:22 +0000 (13:44 +0200)]
[System] Fixes build
Marek Safar [Tue, 31 May 2016 09:44:36 +0000 (11:44 +0200)]
Merge pull request #3075 from knocte/man_bump
[man] bump man's mono version number too (to 4.5.2)
Andres G. Aragoneses [Tue, 31 May 2016 08:51:23 +0000 (16:51 +0800)]
[man] bump man's mono version number too (to 4.5.2)
Following this version bump:
https://github.com/mono/mono/commit/
069cea3712a5bd4959e505260cdc4a0c37861e77
(Also add a note to configure.ac as a hint until
someone comes up with a way to sync man/mono.1's
version automatically.)
Marek Safar [Tue, 31 May 2016 08:06:34 +0000 (10:06 +0200)]
[System] Keep broken api in mobile profiles only
Marek Safar [Tue, 31 May 2016 08:05:13 +0000 (10:05 +0200)]
[WindowsBase] Fixes test assert expectation logic
Marek Safar [Mon, 30 May 2016 22:42:30 +0000 (00:42 +0200)]
[System] Remove empty test
Marek Safar [Tue, 31 May 2016 08:00:21 +0000 (10:00 +0200)]
Merge pull request #3063 from marek-safar/rs-Net
[System] WebRequest from referencesource
Marek Safar [Fri, 27 May 2016 15:57:45 +0000 (17:57 +0200)]
[System] WebProxy from referencesource
Alexander Köplinger [Tue, 31 May 2016 05:04:27 +0000 (07:04 +0200)]
[ci] Bump timeout in runtime test step
We were seeing timeouts in the runtime step if two builds happen to be scheduled
at the exact same time on the ARM workers on Jenkins, causing increased load and
longer test times. They aborted the runtime step right before it'd finish.
Bump the timeout a bit to avoid this.
Zoltan Varga [Tue, 31 May 2016 03:14:32 +0000 (23:14 -0400)]
[bcl] Comment out a win32 pinvoke on the mobile profile, since ios can't have unresolvable pinvokes.
Alex Rønne Petersen [Mon, 30 May 2016 18:14:22 +0000 (20:14 +0200)]
Bump version to 4.5.2.
Vlad Brezae [Mon, 30 May 2016 16:06:09 +0000 (19:06 +0300)]
Merge pull request #3056 from BrzVlad/fix-multiple-binprot
[sgen] Exclusive write on binary protocol file
Vlad Brezae [Mon, 30 May 2016 16:04:28 +0000 (19:04 +0300)]
Merge pull request #3057 from BrzVlad/fix-major-log3
[sgen] Refactor collection logging
Alexander Köplinger [Mon, 30 May 2016 10:36:55 +0000 (12:36 +0200)]
Merge pull request #3071 from adamburgess/fix-ci-links
Update README with new CI builds/badges
Zoltan Varga [Mon, 30 May 2016 07:40:56 +0000 (03:40 -0400)]
[jit] Emit code to throw method access exceptions instead of throwing them from the JIT, so the stack trace is correct. Fixes #41280. (#3072)
Zoltan Varga [Mon, 30 May 2016 02:25:36 +0000 (22:25 -0400)]
Revert "[jit] Emit code to throw method access exceptions instead of throwing them from the JIT, so the stack trace is correct. Fixes #41280."
This reverts commit
04171d2c267d2db54b36877809dca7a890adcfc5.
Revert this as it causes test failures.
Zoltan Varga [Mon, 30 May 2016 02:25:12 +0000 (22:25 -0400)]
Revert "[jit] Fix
04171d2c267d2db54b36877809dca7a890adcfc5 so it actually works."
This reverts commit
6683c128e4510187b0a6b8a6585095dcd25984c2.
Revert this as it causes test failures.
Alexander Köplinger [Mon, 30 May 2016 00:11:33 +0000 (02:11 +0200)]
[System.Transactions] Fix the build broken by https://github.com/mono/mono/pull/3061
Marek Safar [Sun, 29 May 2016 06:22:45 +0000 (08:22 +0200)]
Merge pull request #3061 from Thorium/master
#23050 TransactionScopeAsyncFlowOption
Zoltan Varga [Sun, 29 May 2016 04:24:08 +0000 (00:24 -0400)]
Zoltan Varga [Sun, 29 May 2016 04:21:58 +0000 (00:21 -0400)]
[jit] Emit code to throw method access exceptions instead of throwing them from the JIT, so the stack trace is correct. Fixes #41280.
Adam Burgess [Sat, 28 May 2016 10:03:20 +0000 (20:03 +1000)]
Update README with new CI builds/badges
Adds the debian arm64 build and also changes the amd64/i386 builds to be ubuntu-specific
Zoltan Varga [Sat, 28 May 2016 05:52:01 +0000 (01:52 -0400)]
[gsharedvt] Fix the mapping of reference generic instances in gsharedvt wrappers, they need to be the same as references.
Bernhard Urban [Fri, 27 May 2016 23:50:06 +0000 (16:50 -0700)]
Merge pull request #3002 from lewurm/typespec-caching
[aot] use hashtable for caching typespec of classes
Vlad Brezae [Mon, 23 May 2016 18:01:24 +0000 (21:01 +0300)]
[sgen] Exclusive write on binary protocol file
If we have binary protocol enabled and the debugged executable will spawn a new mono instance, both of the processes will write to the same debug file, because they share the environment variable, producing invalid results. Add a pid sufix if output file exists in order to separately obtain binary protocol outputs from all mono instances.
Aleksey Kliger [Fri, 27 May 2016 20:19:29 +0000 (16:19 -0400)]
[s390x] Fix the build2
Aleksey Kliger [Fri, 27 May 2016 20:15:42 +0000 (16:15 -0400)]
[s390x] Fix the build
Broken by
b884d17
Miguel de Icaza [Fri, 27 May 2016 20:13:17 +0000 (16:13 -0400)]
[genproj] Update from Ankit's project
Aleksey Kliger [Fri, 27 May 2016 19:38:15 +0000 (15:38 -0400)]
[runtime] Avoid mono_error_raise_exception in icalls and debugging utilities
Aleksey Kliger [Fri, 27 May 2016 19:37:02 +0000 (15:37 -0400)]
[perfcounters] Convert instance name to C string in the icall entrypoint.
Convert MonoString to UTF8 early to simplify exception handling.
Aleksey Kliger [Fri, 27 May 2016 18:16:24 +0000 (14:16 -0400)]
[reflection] Don't raise in {Module,Assembly}Builder icalls
Alexander Köplinger [Fri, 27 May 2016 18:20:18 +0000 (20:20 +0200)]
Merge pull request #3037 from mono/system_io_compression_datetime
[System.IO.Compression/.Filesystem] Fixed handling of date/time for Zip entries
Miguel de Icaza [Fri, 27 May 2016 17:52:22 +0000 (13:52 -0400)]
[genproj] Run update-solution-files to track master
Miguel de Icaza [Fri, 27 May 2016 17:27:32 +0000 (13:27 -0400)]
Add another build step
Miguel de Icaza [Fri, 27 May 2016 17:24:08 +0000 (13:24 -0400)]
[genproj] Do not use \r on the Unix parts of the build hook, add RabbitMQ hooks
Vlad Brezae [Wed, 25 May 2016 00:04:40 +0000 (03:04 +0300)]
[sgen] Refactor collection logging
We had the problem that we were logging at sweep finish which can happen anytime. If we happen to suspend a thread, while doing a GC, in the middle of logging we might deadlock if we wait for sweep to finish (which can be blocked waiting for logging).
When logging multiple collections in the same stw pause, we would not log the real results for both collections since we would compute the major sizes at the very end.
We logged collections in sgen_perform_collection, outside the function calls for specific collections, which makes it cumbersome to add additional log entries.
This refactoring solves these issues by having GC code log info at any time. This log entry is enqueued in a list of pending entries. We flush the list of logs, as before, at the end of the stw, when the world is restarted.
Aleksey Kliger [Fri, 27 May 2016 14:38:04 +0000 (10:38 -0400)]
[file-mmap-posix] Don't use mono_error_raise_exception
Alexander Köplinger [Fri, 27 May 2016 15:47:54 +0000 (17:47 +0200)]
Merge pull request #3060 from directhex/pr-in-version.h
[jenkins] Include PR number in version.h if PR builder env is set
Aleksey Kliger [Thu, 26 May 2016 22:05:07 +0000 (18:05 -0400)]
[runtime] Don't raise in mono_assembly_apply_binding
Aleksey Kliger (λgeek) [Fri, 27 May 2016 14:54:45 +0000 (10:54 -0400)]
Merge pull request #3050 from lambdageek/dev/monoerror-to_utf8
[runtime] Mark mono_string_to_utf8 external only.
Alexander Köplinger [Fri, 27 May 2016 14:16:09 +0000 (16:16 +0200)]
Merge pull request #3058 from rolfbjarne/git-instead-of-ssh
[offsets-tool] Use git protocol instead of ssh to allow anonymous access.
Alexander Köplinger [Fri, 27 May 2016 14:06:57 +0000 (16:06 +0200)]
Merge pull request #3062 from madewokherd/win32threadscompile
[win32_threads] Mark an inline function as static.
Marek Safar [Fri, 27 May 2016 14:00:05 +0000 (16:00 +0200)]
[corlib] Clean up MonoType declaration
Marek Safar [Wed, 25 May 2016 10:38:50 +0000 (12:38 +0200)]
[System] WebRequest from referencesource
Joao Matos [Fri, 27 May 2016 12:03:57 +0000 (13:03 +0100)]
[System.IO.Compression.FileSystem] Fixed date time when creating Zip entries from filesystem files.
Joao Matos [Fri, 27 May 2016 12:03:02 +0000 (13:03 +0100)]
[System.IO.Compression] Added test for Zip entry timestamp modification.
Tuomas Hietanen [Fri, 27 May 2016 09:40:09 +0000 (10:40 +0100)]
Made changes suggested by marek.
Jo Shields [Thu, 26 May 2016 10:49:59 +0000 (11:49 +0100)]
[jenkins] Include PR number in version.h if PR builder env is set
A while ago, we switched our PR builders from using the Github-provided PR branch head (i.e. `pull/merge/XXXX`) to the exact sha1 of the latest commit on the PR (i.e. `
abcdefabc`). This change was needed for the performance team, otherwise the changes they wanted to test would be rebased against a new master several times per day, breaking their ability to meaningfully track the changes in a PR.
As a side effect of this, `version.h` went from setting the version from `XXXX/
abcdefabc` to `explicit/
abcdefabc`, and the Jenkins PR packages use the branch name `explicit` instead of the actual PR number `XXXX`, which is pretty bad from a UX perspective.
This change checks for the `ghprbPullId` environment variable and uses it instead of the actual branch name or `explicit` - it is always set on PR builds.
lateralusX [Fri, 27 May 2016 08:22:32 +0000 (10:22 +0200)]
Added support for GSHAREDVT and DYNCALL on Windows x64 for full AOT builds.
Support for GSHAREDVT added for Windows x64. Changes needed
(ones gsharedvt concept was understood, crashes debugged and adjustments located)
where quite small. Primarily around shadow stack used by windows + incorrect handling
of none volatile registers on windows when going over the gsharedvt trampolines.
All GSHAREDVT tests, gshared.exe and aot.tests.exe pass in full AOT builds with above adjustments.
Support for DYNCALL added/enabled for Windows x64. Current AMD64 support was working
for basic scenarios but not enabled on Windows. Identified a problem on AMD64
when structs are passed as input parameters or returned by methods for DYNCALL scenarios
in full AOT:ed builds. This scenario doesn't seem to work for any AMD64 platform for
full AOT and the tests in aot-test.exe handling these scenarios are not run on AMD64.
Adjusted categories on test in aot-tests.exe to reflect what’s really needed by the tests
to run correctly. Also added a new category to some DYNCALL tests that uses struct support
currently not implemented on AMD64, !FULLAOT-AMD64, so at least some of the DYNCALL tests
can be run on AMD64 platforms in full AOT:ed builds.
Zoltan Varga [Fri, 27 May 2016 02:50:23 +0000 (22:50 -0400)]
Remove an unused icall.
monojenkins [Fri, 27 May 2016 01:25:07 +0000 (02:25 +0100)]
Merge pull request #3026 from lewurm/is-call-macro
[mini] small improvements around `MONO_IS_CALL` macro and `local-prop`
showed up in vtunes when running
```
./mono/mini/mono-sgen --stats -O=all --aot=threads=1,asmonly ~/work/benchmarker/tests/fsharp/lib/bootstrap/4.0/FSharp.Compiler.dll
```
also, I think when `OP_DYN_CALL` was introduced, it wasn't added to the `MONO_IS_CALL` macro. @vargaz, what do you think?
Zoltan Varga [Thu, 26 May 2016 22:55:57 +0000 (18:55 -0400)]
[sdb] Avoid calling mono_thread_current () in the profiler shutdown callback, sends a 0 thread id instead, the managed side ignores it.
Bernhard Urban [Fri, 20 May 2016 18:52:47 +0000 (11:52 -0700)]
[mini] avoid checking condition twice in local-prop
Bernhard Urban [Fri, 20 May 2016 18:52:44 +0000 (11:52 -0700)]
[mini] simplify MONO_IS_CALL macro
Zoltan Varga [Thu, 26 May 2016 22:33:41 +0000 (18:33 -0400)]
Merge System/MonoType.cs into ReferenceSources/RuntimeType.cs, use th… (#3045)
* Merge System/MonoType.cs into ReferenceSources/RuntimeType.cs, use the latter in the runtime code.
* [sdb] Fix a test which referenced System.MonoType.
Vincent Povirk [Thu, 26 May 2016 21:50:42 +0000 (16:50 -0500)]
[win32_threads] Mark an inline function as static.
If the C compiler decides not to inline the function, and it's not declared
static, it'll look for an extern version, and linking will fail.
Aleksey Kliger [Wed, 25 May 2016 18:01:22 +0000 (14:01 -0400)]
[runtime] Mark mono_string_to_utf8 external only.
Runtime should use mono_string_to_utf8_checked.
Aleksey Kliger (λgeek) [Thu, 26 May 2016 15:26:33 +0000 (11:26 -0400)]
Merge pull request #3055 from lambdageek/dev/monoerror-cleanup-cleanup
[runtime] Disallow unintended reuse of MonoError after mono_error_cleanup
Tuomas Hietanen [Thu, 26 May 2016 14:07:30 +0000 (15:07 +0100)]
Merge branch 'master' of https://github.com/mono/mono
Tuomas Hietanen [Thu, 26 May 2016 14:04:25 +0000 (15:04 +0100)]
#23050 First attempt to create TransactionScopeAsyncFlowOption on Mono.
This is a feature that is missing. However I don't have Mono,
so has to be compiled and tested.
Ludovic Henry [Thu, 26 May 2016 13:26:51 +0000 (15:26 +0200)]
Merge pull request #3028 from lateralusX/jlorenss/threadpool_warning
Incorrect warning message on thread pool startup in full AOT:ed Windows build.
Marek Safar [Thu, 26 May 2016 09:15:27 +0000 (11:15 +0200)]
Merge pull request #3047 from marek-safar/rs-corlib
[corlib] More System.Runtime.InteropServices from referencesource
Rolf Bjarne Kvinge [Thu, 26 May 2016 07:54:40 +0000 (09:54 +0200)]
[offsets-tool] Use git protocol instead of ssh to allow anonymous access.
Zoltan Varga [Thu, 26 May 2016 03:58:36 +0000 (23:58 -0400)]
Aot runtime noraise3 (#3054)
* [aot] Make mono_aot_get_method () external only, use mono_aot_get_method_checked () instead.
* [aot] Avoid raising exceptions in the AOT runtime.
Aleksey Kliger [Wed, 25 May 2016 23:27:39 +0000 (19:27 -0400)]
[reflection] Reinitialize MonoError after mono_error_convert_to_exception
Aleksey Kliger [Wed, 25 May 2016 23:23:16 +0000 (19:23 -0400)]
[mini] Use an inner MonoError in instance testing in first pass EH
Aleksey Kliger [Wed, 25 May 2016 22:25:37 +0000 (18:25 -0400)]
[runtime] Disallow unintentional reuse of MonoError after mono_error_cleanup
Aleksey Kliger [Wed, 25 May 2016 22:09:16 +0000 (18:09 -0400)]
[reflection] Cleanup uses of mono_error_cleanup
MonoError must be explicitly reinitialized if it is used again after
mono_error_cleanup. But it is better to introduce an explicit inner
MonoError when possible.
Zoltan Varga [Wed, 25 May 2016 20:59:57 +0000 (16:59 -0400)]
[llvmonly] Avoid calling mono_error_raise_exception () to throw exceptions during method initialization, call mono_llvm_throw_exception () directly.
Alexander Köplinger [Wed, 25 May 2016 19:50:30 +0000 (21:50 +0200)]
Merge pull request #3051 from mono/revert-3043-aot-runtime-noraise
Revert "[aot] Avoid raising exceptions in the AOT runtime."
Alexander Köplinger [Wed, 25 May 2016 19:48:39 +0000 (21:48 +0200)]
Revert "[aot] Avoid raising exceptions in the AOT runtime."
Sebastien Pouliot [Wed, 25 May 2016 19:11:22 +0000 (15:11 -0400)]
Merge pull request #2996 from UCIS/patch-7
Generate RSA keys using public exponent 65537 (was 17)
Alexander Köplinger [Wed, 25 May 2016 17:28:55 +0000 (19:28 +0200)]
Merge pull request #3036 from tritao/windowsbase_zip_datetime
[WindowsBase] Fixed System.IO.Packaging creating Zip archive with wrong date time entries
Bernhard Urban [Wed, 25 May 2016 16:56:39 +0000 (09:56 -0700)]
Merge pull request #3016 from lewurm/small-arm-cleanup
[mini-arm] remove useless case for iphone_abi
Bernhard Urban [Tue, 17 May 2016 17:43:25 +0000 (10:43 -0700)]
[aot] use hashtable for caching typespec of classes
I had a look in vtunes for
```
$ mono/mini/mono-sgen --stats -O=all --aot=threads=1,asmonly ~/work/benchmarker/tests/fsharp/lib/bootstrap/4.0/FSharp.Compiler.dll
```
and that method showed up as hot.
With this change I get an improvement from ~27.4s down to ~24.3s on my
machine.
Zoltan Varga [Wed, 25 May 2016 16:35:39 +0000 (12:35 -0400)]
[aot] Avoid raising exceptions in the AOT runtime. (#3043)
Marek Safar [Wed, 25 May 2016 15:01:34 +0000 (17:01 +0200)]
[WindowsBase] Fix for the new .rels file when it's shorter than the old. A fix for #41203
Aleksey Kliger (λgeek) [Wed, 25 May 2016 14:36:20 +0000 (10:36 -0400)]
Merge pull request #3038 from lambdageek/dev/monoerror-threads
[threadpool-ms] Assert if queuing work items fails in the IO selector
Aleksey Kliger (λgeek) [Wed, 25 May 2016 14:12:25 +0000 (10:12 -0400)]
Merge pull request #3042 from lambdageek/dev/monoerror-upgrade_remote_class
[remoting] Pass MonoError to mono_upgrade_remote_class
Aleksey Kliger (λgeek) [Wed, 25 May 2016 13:56:53 +0000 (09:56 -0400)]
Merge pull request #3044 from lambdageek/dev/monoerror-llvm
[llvm] Convert MonoError to LLVM ctx failure in process_call
Marek Safar [Wed, 25 May 2016 13:24:41 +0000 (15:24 +0200)]
Merge pull request #3046 from redbrain/cfnetworking-null-reference
ContentStream can be null
Philip Herron [Wed, 25 May 2016 13:18:59 +0000 (14:18 +0100)]
ContentStream can be null if no bytes were available and is closed will cause null-exception
Marek Safar [Wed, 25 May 2016 12:59:06 +0000 (14:59 +0200)]
[corlib] More System.Runtime.InteropServices from referencesource
Marek Safar [Wed, 25 May 2016 09:01:30 +0000 (11:01 +0200)]
[WindowsBase] Deal with deleted package parts. A patch from #41203
Miguel de Icaza [Tue, 24 May 2016 21:43:21 +0000 (17:43 -0400)]
[genproj] Handle resources properly, add helper scripts to bootstrap
Zoltan Varga [Tue, 24 May 2016 20:37:58 +0000 (16:37 -0400)]
[amd64] Implement the general rgctx fetch trampoline.
Aleksey Kliger [Tue, 24 May 2016 20:19:27 +0000 (16:19 -0400)]
[llvm] Convert MonoError to LLVM ctx failure in process_call
Aleksey Kliger [Tue, 24 May 2016 19:20:30 +0000 (15:20 -0400)]
[llvmonly] Assert gsharedvt wrapper compile always succeeds.
Zoltan Varga [Tue, 24 May 2016 20:08:11 +0000 (16:08 -0400)]
[jit] Optimize ldnull+unbox.any pairs, mcs generates it for code like f = null where f is a field of a generic type with an open type.
Zoltan Varga [Tue, 24 May 2016 19:35:25 +0000 (15:35 -0400)]
[amd64] Add back an assert removed by the previous change.
Zoltan Varga [Tue, 24 May 2016 19:30:29 +0000 (15:30 -0400)]
[amd64] Handle genericinst return types in gsharedvt.
Aleksey Kliger [Tue, 24 May 2016 17:36:39 +0000 (13:36 -0400)]
[remoting] Pass MonoError to mono_upgrade_remote_class
Aleksey Kliger [Tue, 24 May 2016 17:30:21 +0000 (13:30 -0400)]
[remoting] Pass MonoError to mono_remote_class_vtable
Aleksey Kliger [Tue, 24 May 2016 16:51:08 +0000 (12:51 -0400)]
[remoting] Pass MonoError to mono_class_proxy_vtable
Aleksey Kliger [Tue, 24 May 2016 16:26:32 +0000 (12:26 -0400)]
[remoting] MonoError-ize arch_create_remoting_trampoline
Marek Safar [Tue, 24 May 2016 17:11:13 +0000 (19:11 +0200)]
[System.Net.Http] Disable default global proxy when only UseProxy is set. Fixes #41224