Marek Safar [Fri, 27 May 2016 15:57:45 +0000 (17:57 +0200)]
[System] WebProxy from referencesource
Marek Safar [Wed, 25 May 2016 10:38:50 +0000 (12:38 +0200)]
[System] WebRequest from referencesource
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.
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
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
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
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
Zoltan Varga [Tue, 24 May 2016 15:47:42 +0000 (11:47 -0400)]
[arm64] Enable system AOT.
Zoltan Varga [Tue, 24 May 2016 15:43:37 +0000 (11:43 -0400)]
Fix warnings.
Aleksey Kliger (λgeek) [Tue, 24 May 2016 15:11:48 +0000 (11:11 -0400)]
Merge pull request #3024 from lambdageek/dev/monoerror-endinvoke
[threadpool-ms] MonoError-ize mono_threadpool_ms_end_invoke
Aleksey Kliger (λgeek) [Tue, 24 May 2016 15:08:01 +0000 (11:08 -0400)]
Merge pull request #3029 from lambdageek/dev/simplify-monoerror-threads
[runtime] Simplify MonoError handling in finalizer creation and in thread objects
Aleksey Kliger (λgeek) [Tue, 24 May 2016 14:29:26 +0000 (10:29 -0400)]
Merge pull request #3041 from lambdageek/dev/monoerror-mono_arch_patch_code
[ia64/mips/ppc/s390x/sparc] Add MonoError arg to mono_arch_patch_code
Aleksey Kliger [Mon, 23 May 2016 23:16:32 +0000 (19:16 -0400)]
[ia64/mips/ppc/s390x/sparc] Add MonoError arg to mono_arch_patch_code
Aleksey Kliger (λgeek) [Mon, 23 May 2016 22:37:10 +0000 (18:37 -0400)]
Merge pull request #3032 from lambdageek/dev/monoerror-gc
[runtime] Don't raise MonoErrors in mono_gc_run-finalize
Rodrigo Kumpera [Fri, 20 May 2016 23:20:28 +0000 (16:20 -0700)]
[runtime] Cleanup how we map WAIT_FAILED to what managed expects.
Rodrigo Kumpera [Thu, 19 May 2016 23:13:54 +0000 (16:13 -0700)]
[coop] Change self_abort_internal to take a MonoError to report that an exception must be raised.
Rodrigo Kumpera [Thu, 19 May 2016 23:09:07 +0000 (16:09 -0700)]
[runtime] Change mono_thread_internal_stop to only stop other threads. Mask mono_thread_stop as MONO_RT_EXTERNAL_ONLY.
This change makes it not need to throw exceptions.
In the runtime, use mono_thread_internal_stop instead of mono_thread_stop.
mono_thread_internal_stop only stops other threads, which is what runtime usage calls for.
mono_thread_stop will stop the current thread by raising and exception.
Rodrigo Kumpera [Thu, 19 May 2016 22:41:45 +0000 (15:41 -0700)]
[runtime] Introduce mono_thread_internal_abort to be used instead of ves_icall_System_Threading_Thread_Abort.
Rodrigo Kumpera [Thu, 19 May 2016 22:08:34 +0000 (15:08 -0700)]
[runtime] Change mono_thread_current_check_pending_interrupt to use mono_set_pending_exception.
Callers now check its return and set a pending exception.
Rodrigo Kumpera [Thu, 19 May 2016 21:19:31 +0000 (14:19 -0700)]
[runtime] Simplify mono_wait_uninterrupted, remove two arguments that are needed.
The first argument is whether it's a single or multiple wait. We can infer that from the number of handles.
The second argument is alertable. All waits are alertable, so I baked the constant directly.
Rodrigo Kumpera [Thu, 19 May 2016 21:14:04 +0000 (14:14 -0700)]
[coop] Use MonoError in mono_wait_uninterrupted.
This removes an usage of mono_raise_exception by a set_pending
Aleksey Kliger [Mon, 23 May 2016 21:40:45 +0000 (17:40 -0400)]
[threapool-ms] Assert if queuing work items fails
Aleksey Kliger [Mon, 23 May 2016 18:27:31 +0000 (14:27 -0400)]
[runtime] Don't raise in mono_threads_get_thread_dump
Miguel de Icaza [Mon, 23 May 2016 20:56:44 +0000 (16:56 -0400)]
[genproj] Properly include EmbeddedResources for .resx->resources
Zoltan Varga [Mon, 23 May 2016 19:48:24 +0000 (15:48 -0400)]
[runtime] Remove some older glib workarounds.
Zoltan Varga [Mon, 23 May 2016 19:48:08 +0000 (15:48 -0400)]
[eglib] Use the PRi64 defines from inttypes.h to define G_GINT64_FORMAT etc. Get rid of support for older MSVC versions.
Joao Matos [Mon, 23 May 2016 19:05:31 +0000 (20:05 +0100)]
[System.IO.Compression] Fixed date time handling of Zip entries.
Zoltan Varga [Mon, 23 May 2016 18:46:03 +0000 (14:46 -0400)]
[runtime] Remove some dead code.
Aleksey Kliger [Fri, 20 May 2016 17:53:09 +0000 (13:53 -0400)]
[runtime] Push null check to callers of mono_object_register_finalizer
Simplify error propagation since most callers register a finalizer after
doing their own null check.
Aleksey Kliger [Fri, 20 May 2016 14:20:44 +0000 (10:20 -0400)]
[runtime] Assert in create_thread_object and create_internal_thread
They can only ever fail if allocation fails, which we can't recover
from, so let's just assert that we succeed.
This in turn simplifies the error handling in a lot of other thread routines.
Aleksey Kliger [Fri, 13 May 2016 18:32:27 +0000 (14:32 -0400)]
[runtime] (remoting.c) Get rid of mono_error_raise_exception calls
Aleksey Kliger [Fri, 20 May 2016 20:03:52 +0000 (16:03 -0400)]
[runtime] Don't raise MonoErrors in mono_gc_run-finalize
Ship them off to unhandled exception handling instead.
Aleksey Kliger [Thu, 19 May 2016 21:42:31 +0000 (17:42 -0400)]
[threadpool-ms] MonoError-ize mono_threadpool_ms_end_invoke
Alexander Köplinger [Mon, 23 May 2016 17:15:11 +0000 (19:15 +0200)]
Redist the referencesource folder
Since referencesource is no longer a submodule under external/ after https://github.com/mono/mono/pull/2962
it didn't get included in the tarball anymore.
We need to add it again to fix the tarball build.
Zoltan Varga [Mon, 23 May 2016 16:50:21 +0000 (12:50 -0400)]
[arm64] Add missing mini-arm64-gsharedvt.h file to arm64_sources.
Alexander Köplinger [Mon, 23 May 2016 13:58:01 +0000 (15:58 +0200)]
[msvc] Update .def files
Alexander Köplinger [Mon, 23 May 2016 13:52:17 +0000 (15:52 +0200)]
Merge pull request #3033 from akoeplinger/fix-xbuild
Various xbuild 14.0 fixes
Rodrigo Kumpera [Sun, 22 May 2016 23:10:13 +0000 (16:10 -0700)]
Merge pull request #3035 from mono/revert-3025-mono_raise_exception_in_threads
Revert "[coop] Remove mono_raise_exception from threads.c"
Rodrigo Kumpera [Sun, 22 May 2016 23:09:43 +0000 (16:09 -0700)]
Revert "[coop] Remove mono_raise_exception from threads.c"
Ludovic Henry [Fri, 20 May 2016 23:52:01 +0000 (19:52 -0400)]
Merge pull request #3018 from ludovic-henry/coop-marshal-attach
[coop] Generate native-to-managed thread attaching in marshal + Reset mono_jit_thread_attach signature
Rodrigo Kumpera [Fri, 20 May 2016 23:22:43 +0000 (16:22 -0700)]
Merge pull request #3025 from kumpera/mono_raise_exception_in_threads
[coop] Remove mono_raise_exception from threads.c
Rodrigo Kumpera [Fri, 20 May 2016 23:20:28 +0000 (16:20 -0700)]
[runtime] Cleanup how we map WAIT_FAILED to what managed expects.
Rodrigo Kumpera [Fri, 20 May 2016 21:44:05 +0000 (14:44 -0700)]
Merge pull request #3030 from kumpera/fix_locale
[eglib] Ignore nl_langinfo as it doesn't return the actual system default.
Alexander Köplinger [Fri, 20 May 2016 21:19:01 +0000 (23:19 +0200)]
[xbuild] Add AssignLinkMetadata to xbuild 14
This is essentially the same as https://github.com/mono/mono/commit/
639bf661715fc190b595d05193c335f70b3313eb but for the xbuild 14 profile.
Alexander Köplinger [Fri, 20 May 2016 21:24:04 +0000 (23:24 +0200)]
[xbuild] Make sure MSBuildFrameworkToolsPath is set for xbuild 14
Alexander Köplinger [Fri, 20 May 2016 21:04:16 +0000 (23:04 +0200)]
[xbuild] Fix DependsOnSystemRuntime returning false on xbuild 14
In https://github.com/mono/mono/commit/
4164d9fbe19a1e6acb3a5ea122891020ff2868d7 the 14.0 target was updated to include
the DependsOnSystemRuntime property. However, it wasn't actually implemented in the code behind. This resulted in the
property not being set/true even if we depend on assemblies that reference System.Runtime, which in turn leads us to not
adding the Facades in ImplicitlyExpandDesignTimeFacades. This then breaks compilation because the System.Runtime lookup fails.
The fix is to actually implement the property.
Rodrigo Kumpera [Thu, 19 May 2016 23:13:54 +0000 (16:13 -0700)]
[coop] Change self_abort_internal to take a MonoError to report that an exception must be raised.
Rodrigo Kumpera [Thu, 19 May 2016 23:09:07 +0000 (16:09 -0700)]
[runtime] Change mono_thread_internal_stop to only stop other threads. Mask mono_thread_stop as MONO_RT_EXTERNAL_ONLY.
This change makes it not need to throw exceptions.
In the runtime, use mono_thread_internal_stop instead of mono_thread_stop.
mono_thread_internal_stop only stops other threads, which is what runtime usage calls for.
mono_thread_stop will stop the current thread by raising and exception.
Rodrigo Kumpera [Thu, 19 May 2016 22:41:45 +0000 (15:41 -0700)]
[runtime] Introduce mono_thread_internal_abort to be used instead of ves_icall_System_Threading_Thread_Abort.
Rodrigo Kumpera [Thu, 19 May 2016 22:08:34 +0000 (15:08 -0700)]
[runtime] Change mono_thread_current_check_pending_interrupt to use mono_set_pending_exception.
Callers now check its return and set a pending exception.
Rodrigo Kumpera [Thu, 19 May 2016 21:19:31 +0000 (14:19 -0700)]
[runtime] Simplify mono_wait_uninterrupted, remove two arguments that are needed.
The first argument is whether it's a single or multiple wait. We can infer that from the number of handles.
The second argument is alertable. All waits are alertable, so I baked the constant directly.
Rodrigo Kumpera [Thu, 19 May 2016 21:14:04 +0000 (14:14 -0700)]
[coop] Use MonoError in mono_wait_uninterrupted.
This removes an usage of mono_raise_exception by a set_pending
Rodrigo Kumpera [Fri, 20 May 2016 18:48:35 +0000 (11:48 -0700)]
[eglib] Ignore nl_langinfo as it doesn't return the actual system default. Fixes #41128.
nl_langinfo doesn't query the right system value, it returns ASCII on OSX, for example.
Aleksey Kliger (λgeek) [Fri, 20 May 2016 14:06:28 +0000 (10:06 -0400)]
Merge pull request #3023 from lambdageek/dev/monoerror-minisig
[mini] Propagate MonoError in mini_get_signature
lateralusX [Fri, 20 May 2016 09:27:48 +0000 (11:27 +0200)]
Incorrect warning message on thread pool startup in full AOT:ed Windows build.
When running mono/mini aot-tests.exe on full AOT:ed Windows build the following
warning message is incorrectly written to the console several times:
g_warning ("failed to get 100ns ticks");
This happens since the check triggering this warning is not taking into account
that startup time between first call to mono_ns100_ticks storing the start time
and the launch of the thread pool requesting 100ns ticks and convert it to
elapsed seconds can occur during the first second of the process lifetime.
This is more likely to happen in a full AOT:ed image since nothing needs to
be JIT:ed at startup, making it more likely to exploit the problem reaching this
code within the first second of process lifetime.
The purpose of the check is to validate that mono_ns100_ticks is returning “valid”
data, but currently it checks it after converting it to seconds, meaning that the result
of the division gets truncated to 0 during the first second. The only invalid, deterministic error
from mono_ns100_ticks that could be used to trigger this warning is either 0 or a negative time value,
but currently it just checks for 0 as an error. The fix is to make the check on the return from
mono_ns100_ticks instead of on the result of the division by 10 000 000 as it is today.
Alexander Köplinger [Fri, 20 May 2016 02:02:04 +0000 (04:02 +0200)]
Merge pull request #3027 from akoeplinger/ci-bump-timeout
[ci] Bump timeout for runtime tests
Alexander Köplinger [Fri, 20 May 2016 00:29:25 +0000 (02:29 +0200)]
[ci] Bump timeout for runtime tests
On the new Jenkins infrastructure with the new ARM64 bots we're hitting the 2h runtime test
limit right before they'd be finished. Bump the timeout a bit to fix this.
Rodrigo Kumpera [Thu, 19 May 2016 16:47:47 +0000 (09:47 -0700)]
[coop] Use set_pending in ves_icall_System_Threading_Thread_Sleep_internal, it's an icall.
Aleksey Kliger [Thu, 19 May 2016 20:27:39 +0000 (16:27 -0400)]
[mini] Propagate MonoError in mini_get_signature
Also mark mono_metadata_parse_signature external only, runtime should
use mono_metadata_parse_signature_checked
Aleksey Kliger [Thu, 19 May 2016 20:02:56 +0000 (16:02 -0400)]
[runtime] (threads.c, marshal.c) Set pending exception in a few icalls
Miguel de Icaza [Thu, 19 May 2016 18:07:09 +0000 (14:07 -0400)]
Add missing project file
Miguel de Icaza [Thu, 19 May 2016 16:50:48 +0000 (12:50 -0400)]
[msbuild projects] Use newlines without a carriage return for Unix targets to appease MS msbuild
Zoltan Varga [Thu, 19 May 2016 16:18:45 +0000 (12:18 -0400)]
[llvm] Avoid emitting got slots of type MONO_PATCH_INFO_ICALL_ADDR when using direct pinvokes, since the patch is not needed, and it cannot be resolved on platforms without a working dlsym().
Ludovic Henry [Wed, 18 May 2016 23:54:20 +0000 (19:54 -0400)]
[coop] Reset mono_jit_thread_attach signature
XM depends on mono_jit_thread_attach signature, even if it's not a public API. So to avoid breaking it, we need to reset it to its previous signature.