mono.git
8 years agoAdd a conditional for fork and exec* functions.
Rolf Bjarne Kvinge [Fri, 7 Aug 2015 08:47:00 +0000 (10:47 +0200)]
Add a conditional for fork and exec* functions.

They're not available on WatchOS.

8 years ago[runtime] Avoid a memory overflow in Buffer.InternalBlockCopy () if the caller passes...
Zoltan Varga [Fri, 7 Aug 2015 02:15:30 +0000 (22:15 -0400)]
[runtime] Avoid a memory overflow in Buffer.InternalBlockCopy () if the caller passes in a negative value by mistake.

8 years ago[runtime] Remove some dead code.
Zoltan Varga [Wed, 5 Aug 2015 04:08:03 +0000 (00:08 -0400)]
[runtime] Remove some dead code.

8 years ago[runtime] Fix memory corruption due to incorrect use of MONO_OBJECT_SETREF
Ludovic Henry [Thu, 6 Aug 2015 18:58:13 +0000 (14:58 -0400)]
[runtime] Fix memory corruption due to incorrect use of MONO_OBJECT_SETREF

MONO_OBJECT_SETREF would use mono_gc_wbarrier_set_field which would write over 8 bytes ( *(void**)field = value ), while we want to write over 1 byte here.

8 years agoMerge pull request #1966 from angeloc/master
João Matos [Thu, 6 Aug 2015 12:22:20 +0000 (13:22 +0100)]
Merge pull request #1966 from angeloc/master

Better handling of vasprintf checking

8 years agoBetter handling of vasprintf checking
Angelo Compagnucci [Thu, 6 Aug 2015 07:36:36 +0000 (09:36 +0200)]
Better handling of vasprintf checking

This patch improves the handling of vasprint checking.
It switches the unneeded have_vasprintf variable with the
AC_CHECK_FUNCS defined ac_cv_func_vasprintf one.

8 years agoMerge pull request #1965 from akoeplinger/fix-flaky-test
Zoltan Varga [Wed, 5 Aug 2015 23:09:39 +0000 (19:09 -0400)]
Merge pull request #1965 from akoeplinger/fix-flaky-test

[System.ServiceModel] Fix flaky Bug652331_2 test

8 years ago[System.ServiceModel] Fix flaky Bug652331_2 test
Alexander Köplinger [Wed, 5 Aug 2015 18:09:32 +0000 (20:09 +0200)]
[System.ServiceModel] Fix flaky Bug652331_2 test

The test sometimes failed on Jenkins with the timeout assert. Running only this single test locally
with `make check TESTNAME=System.ServiceModel.Dispatcher.Bug652331Test.Bug652331_2` however reproduced
this almost every single time.

It seems that WCF takes a bit to initialize until it accepts connections, so putting a little sleep
fixed this for me locally and running it in a loop for half an hour didn't assert even once.

8 years ago[runtime] Re-enable the soft debugger on x86 without presence of signals.
João Matos [Wed, 5 Aug 2015 16:49:39 +0000 (17:49 +0100)]
[runtime] Re-enable the soft debugger on x86 without presence of signals.

As of b76665b8485e45bea13e2694107117877f96c98b the debugger does not rely on signals anymore for stepping.

8 years ago[sgen] Do not use Mach OS initialisation if using coop GC.
João Matos [Wed, 5 Aug 2015 16:47:06 +0000 (17:47 +0100)]
[sgen] Do not use Mach OS initialisation if using coop GC.

8 years ago[runtime] Add testing for unhandled exception
Ludovic Henry [Tue, 4 Aug 2015 20:40:36 +0000 (16:40 -0400)]
[runtime] Add testing for unhandled exception

8 years ago[runtime] Refactor AsyncResult.Invoke icall and swallow exception on AsyncCallback
Ludovic Henry [Tue, 4 Aug 2015 13:42:41 +0000 (09:42 -0400)]
[runtime] Refactor AsyncResult.Invoke icall and swallow exception on AsyncCallback

The swallowed exception is the behavior we can observe on .NET and Mono 4.0

8 years agoMerge pull request #1963 from angeloc/patch-1
João Matos [Wed, 5 Aug 2015 11:50:16 +0000 (12:50 +0100)]
Merge pull request #1963 from angeloc/patch-1

Fixing initialization of have_vasprintf

8 years agoFixing initialization of have_vasprintf
Angelo Compagnucci [Wed, 5 Aug 2015 10:59:45 +0000 (12:59 +0200)]
Fixing initialization of have_vasprintf

This patch initialize properly have_vasprintf in case vasprint function is found.
Solves multiple definition of `vasprintf' error in case vasprint is not properly detected.

8 years ago[system.net.http] Add special handling for chunked transfer-encoding httpwebrequest...
Marek Safar [Wed, 5 Aug 2015 08:10:53 +0000 (10:10 +0200)]
[system.net.http] Add special handling for chunked transfer-encoding httpwebrequest initialization. Fixes #31877

8 years agoFix the build.
Zoltan Varga [Wed, 5 Aug 2015 03:01:56 +0000 (23:01 -0400)]
Fix the build.

8 years ago[sdb] Transition to using sdb trampolines instead of signals for single stepping...
Zoltan Varga [Wed, 5 Aug 2015 02:59:12 +0000 (22:59 -0400)]
[sdb] Transition to using sdb trampolines instead of signals for single stepping/breakpoints.

8 years ago[sdb] Improve logging a bit.
Zoltan Varga [Wed, 5 Aug 2015 02:37:12 +0000 (22:37 -0400)]
[sdb] Improve logging a bit.

8 years ago[runtime] Reenable Frak TLS on OSX
Rodrigo Kumpera [Wed, 5 Aug 2015 02:04:29 +0000 (22:04 -0400)]
[runtime] Reenable Frak TLS on OSX

8 years ago[bcl] Remove old ThreadPool managed class
Ludovic Henry [Tue, 4 Aug 2015 22:35:48 +0000 (18:35 -0400)]
[bcl] Remove old ThreadPool managed class

8 years ago[tests] MonoThreadsSync structures are no longer allocated at the first Enter.
Vlad Brezae [Thu, 22 Jan 2015 21:01:16 +0000 (13:01 -0800)]
[tests] MonoThreadsSync structures are no longer allocated at the first Enter.

Overflow the nest count in order to achieve the same effect.

8 years agoThrow exception when trying to unlock unowned lock.
Vlad Brezae [Tue, 20 Jan 2015 01:53:23 +0000 (17:53 -0800)]
Throw exception when trying to unlock unowned lock.

8 years agoUnmanaged thin lock implementation.
Vlad Brezae [Mon, 19 Jan 2015 21:51:32 +0000 (13:51 -0800)]
Unmanaged thin lock implementation.

This commit avoids allocation of new MonoThreadsSync structures for the typical cases of shallow nesting of uncontended locks. The necessary information (owner, nest and status bits) is embedded in the synchronisation field of a MonoObject. The lock is inflated when the nest overflows or when there is contention on the lock.

This greatly improves performance (over 10 times) for the case of locking a lock only a few times, due to the inflation avoidance. It also improves performance up to 25% for the case of locking a thin lock. A decrease in performance (up to 3 times slower) can happen for the case of repetitive nesting of a lock, due to the need of a CAS at each entry/exit.

Disable native fastpaths for now, until they are updated to the new implementation.

Merge notes from Rodrigo:
Remove the enter fast paths in monitor.c as the new code already has them.

8 years agoAdded mono_runtime_posix_install_handlers stub for WatchOS.
triton [Tue, 4 Aug 2015 18:16:18 +0000 (19:16 +0100)]
Added mono_runtime_posix_install_handlers stub for WatchOS.

8 years agoAdded SGen OS support code stubs for coop backend.
triton [Tue, 4 Aug 2015 18:15:43 +0000 (19:15 +0100)]
Added SGen OS support code stubs for coop backend.

8 years agoRevert "[runtime] Refactor AsyncResult.Invoke internal call"
Ludovic Henry [Tue, 4 Aug 2015 13:31:33 +0000 (09:31 -0400)]
Revert "[runtime] Refactor AsyncResult.Invoke internal call"

This reverts commit e4ce838cd3616876f4f59aa3702a52ab1f5bf2ca.

8 years agoRevert "[runtime] Refactor AsyncResult creation with MonoAsyncCall"
Ludovic Henry [Tue, 4 Aug 2015 13:31:30 +0000 (09:31 -0400)]
Revert "[runtime] Refactor AsyncResult creation with MonoAsyncCall"

This reverts commit 0e27abd93ae9821bf13257b0aa3d283b4fc6857f.

8 years agoRevert "[runtime] Move AsyncResult.Invoke to managed"
Ludovic Henry [Tue, 4 Aug 2015 13:31:26 +0000 (09:31 -0400)]
Revert "[runtime] Move AsyncResult.Invoke to managed"

This reverts commit 29b07ab3ad3bc7cea2178035a94dfb61ddf6bb4a.

8 years ago[mcs] Cached labels definite assignment check does not need exact match but anything...
Marek Safar [Tue, 4 Aug 2015 13:26:50 +0000 (15:26 +0200)]
[mcs] Cached labels definite assignment check does not need exact match but anything larger than original set satisfies the condition. Fixes #32732

8 years ago[mcs] Special case return expression of Task<Task> in async block. Fixes #32712
Marek Safar [Tue, 4 Aug 2015 11:00:41 +0000 (13:00 +0200)]
[mcs] Special case return expression of Task<Task> in async block. Fixes #32712

8 years ago[llvm] Use the default code model on amd64, the 'large' code model leads to problems...
Zoltan Varga [Tue, 4 Aug 2015 02:07:40 +0000 (22:07 -0400)]
[llvm] Use the default code model on amd64, the 'large' code model leads to problems since the runtime doesn't support thunks on amd64.

8 years ago[jit] Remove monitor enter/exit trampolines, their performance is similar to calling...
Zoltan Varga [Mon, 3 Aug 2015 22:51:54 +0000 (18:51 -0400)]
[jit] Remove monitor enter/exit trampolines, their performance is similar to calling the icalls directly, so its not worth the complexity.

8 years ago[runtime] Add a separate icall for Monitor.Enter(obj,&bool).
Zoltan Varga [Mon, 3 Aug 2015 22:35:42 +0000 (18:35 -0400)]
[runtime] Add a separate icall for Monitor.Enter(obj,&bool).

8 years ago[runtime] Add fastpaths to the Monitor.Enter () methods.
Zoltan Varga [Mon, 3 Aug 2015 22:20:24 +0000 (18:20 -0400)]
[runtime] Add fastpaths to the Monitor.Enter () methods.

8 years agoMerge pull request #1912 from ludovic-henry/threadpool-managed-asyncresult
Rodrigo Kumpera [Mon, 3 Aug 2015 21:37:54 +0000 (17:37 -0400)]
Merge pull request #1912 from ludovic-henry/threadpool-managed-asyncresult

[runtime] Move AsyncResult.Invoke to managed

8 years ago[runtime] Move AsyncResult.Invoke to managed
Ludovic Henry [Mon, 3 Aug 2015 18:47:11 +0000 (14:47 -0400)]
[runtime] Move AsyncResult.Invoke to managed

8 years ago[System] Increase timeout of a test in SslStreamTest
Alexander Köplinger [Mon, 3 Aug 2015 19:24:25 +0000 (21:24 +0200)]
[System] Increase timeout of a test in SslStreamTest

The AuthenticateClientAndServer_ClientSendsNoData test sometimes failed on Jenkins,
but the 2s timeout is pretty short (it takes about 0.5s on my fast machine as well).

Increasing it to 5s should allow the test to work on the slower Jenkins machines as well.

8 years ago[runtime] Refactor AsyncResult creation with MonoAsyncCall
Ludovic Henry [Mon, 3 Aug 2015 16:40:27 +0000 (12:40 -0400)]
[runtime] Refactor AsyncResult creation with MonoAsyncCall

8 years ago[runtime] Refactor AsyncResult.Invoke internal call
Ludovic Henry [Mon, 3 Aug 2015 16:24:31 +0000 (12:24 -0400)]
[runtime] Refactor AsyncResult.Invoke internal call

Instead of catching the exception and rethrowin it right away, we do not catch it. This simplifies the code, and will give us more insight into the underlying exception.

Also merge mono_async_result_invoke into ves_icall_System_Runtime_Remoting_Messaging_AsyncResult_Invoke as it is the only place we use it.

8 years agoMerge pull request #1959 from alexrp/master
Zoltan Varga [Mon, 3 Aug 2015 16:20:41 +0000 (12:20 -0400)]
Merge pull request #1959 from alexrp/master

Fix atomic_add_i4 on PPC

8 years agoMerge pull request #1958 from rolfbjarne/aot-error-reporting
Zoltan Varga [Mon, 3 Aug 2015 16:01:46 +0000 (12:01 -0400)]
Merge pull request #1958 from rolfbjarne/aot-error-reporting

[aot] use g_error instead of fprintf + exit(1).

8 years ago[ppc] Fix atomic_add_i4 support for 32-bit PPC.
Alex Rønne Petersen [Mon, 3 Aug 2015 15:32:31 +0000 (17:32 +0200)]
[ppc] Fix atomic_add_i4 support for 32-bit PPC.

8 years ago[ppc] Instruction length of atomic_add_i4 is 28.
Alex Rønne Petersen [Mon, 3 Aug 2015 15:32:07 +0000 (17:32 +0200)]
[ppc] Instruction length of atomic_add_i4 is 28.

8 years ago[aot] use g_error instead of fprintf + exit(1).
Rolf Bjarne Kvinge [Mon, 3 Aug 2015 14:02:18 +0000 (16:02 +0200)]
[aot] use g_error instead of fprintf + exit(1).

printfs don't always show up in the iOS device log, and exit(1) does
not create a crash report, making these conditions hard to debug
(all you get is "app X exited with code 1", and then you need to
attach a native debugger and break on 'exit' to figure out more).

g_error will end up producing output using NSLog (which always
shows up in the device log), and a crash report as well, making
debugging a lot easier.

8 years ago[llvm] Reenable the 'handler without invokes' llvm restriction, it causes llvm to...
Zoltan Varga [Mon, 3 Aug 2015 04:05:12 +0000 (00:05 -0400)]
[llvm] Reenable the 'handler without invokes' llvm restriction, it causes llvm to eliminate the handler, causing finally_block_ending_in_dead_bb.exe to fail on amd64.

8 years agoRevert "[runtime] Disable finally_block_ending_in_dead_bb.exe on wrench, it fails...
Zoltan Varga [Mon, 3 Aug 2015 04:04:23 +0000 (00:04 -0400)]
Revert "[runtime] Disable finally_block_ending_in_dead_bb.exe on wrench, it fails with llvm."

This reverts commit 7b7692a988f82e71c575e2c75b9293d8bef9ffe7.

Revert this as its not needed.

8 years ago[runtime] Disable finally_block_ending_in_dead_bb.exe on wrench, it fails with llvm.
Zoltan Varga [Mon, 3 Aug 2015 03:56:48 +0000 (23:56 -0400)]
[runtime] Disable finally_block_ending_in_dead_bb.exe on wrench, it fails with llvm.

8 years agoruntime] Add semicolons after the calls to the coop gc macros to avoid confusing...
Zoltan Varga [Sun, 2 Aug 2015 04:47:29 +0000 (00:47 -0400)]
runtime] Add semicolons after the calls to the coop gc macros to avoid confusing editors.

8 years ago[runtime] Clean up the mini makefile a bit.
Zoltan Varga [Sun, 2 Aug 2015 04:42:01 +0000 (00:42 -0400)]
[runtime] Clean up the mini makefile a bit.

8 years ago[runtime] Clean up configure.ac a bit.
Zoltan Varga [Sun, 2 Aug 2015 04:13:49 +0000 (00:13 -0400)]
[runtime] Clean up configure.ac a bit.

8 years ago[arm] Remove usunsed arch/arm/tramp.c file.
Zoltan Varga [Sun, 2 Aug 2015 03:27:35 +0000 (23:27 -0400)]
[arm] Remove usunsed arch/arm/tramp.c file.

8 years ago[arm] Avoid running out of thunk space if the same instruction is patched multiple...
Zoltan Varga [Sun, 2 Aug 2015 01:25:46 +0000 (21:25 -0400)]
[arm] Avoid running out of thunk space if the same instruction is patched multiple times. Fixes #32179.

8 years ago[aot] Avoid passing empty quoted arguments to the linker.
Zoltan Varga [Sun, 2 Aug 2015 00:42:37 +0000 (20:42 -0400)]
[aot] Avoid passing empty quoted arguments to the linker.

8 years agoFix a warning.
Zoltan Varga [Sat, 1 Aug 2015 23:45:14 +0000 (19:45 -0400)]
Fix a warning.

8 years ago[llvm] Fix support for returning empty structs from pinvoke methods on amd64.
Zoltan Varga [Sat, 1 Aug 2015 23:34:20 +0000 (19:34 -0400)]
[llvm] Fix support for returning empty structs from pinvoke methods on amd64.

8 years ago[jit] Enable direct calls to the monitor icalls.
Zoltan Varga [Sat, 1 Aug 2015 23:17:05 +0000 (19:17 -0400)]
[jit] Enable direct calls to the monitor icalls.

8 years ago[runtime] Use mono_set_pending_exception () in the monitor icalls.
Zoltan Varga [Sat, 1 Aug 2015 23:16:30 +0000 (19:16 -0400)]
[runtime] Use mono_set_pending_exception () in the monitor icalls.

8 years agoMerge pull request #1955 from LogosBible/servicepoint_nre
Marek Safar [Sat, 1 Aug 2015 06:52:31 +0000 (08:52 +0200)]
Merge pull request #1955 from LogosBible/servicepoint_nre

Fix NRE in CheckAvailableForRecycling. Fixes #32685

8 years agoMerge pull request #1956 from akoeplinger/fix-processtest-race
Marek Safar [Sat, 1 Aug 2015 05:50:47 +0000 (07:50 +0200)]
Merge pull request #1956 from akoeplinger/fix-processtest-race

[System] Fix a race in two ProcessTest tests

8 years agoMerge pull request #1957 from akoeplinger/msbuild-fix
Alex Rønne Petersen [Sat, 1 Aug 2015 04:35:38 +0000 (06:35 +0200)]
Merge pull request #1957 from akoeplinger/msbuild-fix

Revert "[Microsoft.Build.Engine] Fix bug with escaped semicolon and spaces"

8 years agoRevert "[Microsoft.Build.Engine] Fix bug with escaped semicolon and spaces"
Alexander Köplinger [Thu, 23 Jul 2015 09:52:06 +0000 (11:52 +0200)]
Revert "[Microsoft.Build.Engine] Fix bug with escaped semicolon and spaces"

This reverts commit 51297ed7ab06480df84520c758639b6cef0790d9.

It caused a regression for escaped quotes (%22) in msbuild properties. See https://github.com/mono/mono/commit/51297ed7ab06480df84520c758639b6cef0790d9#commitcomment-11827605.

Disable test that now fails again after the revert. Add new test that verifies the behavior originally broken by the change.

8 years ago[System] Fix a race in two ProcessTest tests
Alexander Köplinger [Fri, 31 Jul 2015 23:33:04 +0000 (01:33 +0200)]
[System] Fix a race in two ProcessTest tests

The tests sometimes failed in CI, due to a race condition between
the Exited event and our assertion of whether it was called.

8 years agoFix NRE in CheckAvailableForRecycling. Fixes #32685
Tom Philpot [Fri, 31 Jul 2015 22:17:35 +0000 (15:17 -0700)]
Fix NRE in CheckAvailableForRecycling. Fixes #32685

8 years ago[mkbundle] Add `mkbundle --dos2unix` parameter.
Jonathan Pryor [Fri, 31 Jul 2015 19:21:57 +0000 (15:21 -0400)]
[mkbundle] Add `mkbundle --dos2unix` parameter.

Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=25086
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=31875
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=32171

Reverts and reworks commit bcfec743.

The problem is that when Xamarin.Android is running mkbundle, dos2unix
should NEVER be used, because the Android NDK NEVER wants Unix-like
paths, which is what dos2unix creates.

Commit bcfec743 attempted to fix this by removing dos2unix invocation
from the Xamarin.Android codepath.

The problem is that the logic was backwards: it removed dos2unix
invocation when XAMARIN_ANDROID was NOT defined, and PRESERVED
dos2unix invocation when XAMARIN_ANDROID WAS defined.

Meaning commit bcfec743 broke normal/default mkbundle.exe use on
Windows -- it would no longer probe for and use dos2unix if present --
and Xamarin.Android use of mkbundle continued to check for and use
dos2unix if it was present, continuing the buggy behavior.

Doh!

Thus, a reworking: Add a `mkbundle --dos2unix` parameter.
If `mkbundle --dos2unix=false` is specified, dos2unix will NOT be
probed for, and will NOT be used. If `mkbundle --dos2unix` or
`mkbundle --dos2unix=true` is used, then dos2unix WILL be used.

This allows the caller to consistently, ahead of time, control
mkbundle's behavior regarding dos2unix, which will e.g. allow
Xamarin.Android to *always* specify --dos2unix=false, allowing things
to build as desired there.

8 years ago[System.Runtime.Remoting] Use NotWorking category for test instead of Ignore attribute
Alexander Köplinger [Fri, 31 Jul 2015 19:06:05 +0000 (21:06 +0200)]
[System.Runtime.Remoting] Use NotWorking category for test instead of Ignore attribute

The TestFixtureSetUp would sometimes fail in CI, but none of the tests in this class are
actually run since they are all either [Category("NotWorking")] or [Ignore].

Moving the one test from Ignore to NotWorking category allows NUnit to recognize there
are no tests to run and skips the unnecessary TestFixtureSetUp completely.

8 years ago[mcs] Try to report better error message for file excedding PE/COFF limit. Fixes...
Marek Safar [Fri, 31 Jul 2015 12:36:28 +0000 (14:36 +0200)]
[mcs] Try to report better error message for file excedding PE/COFF limit. Fixes #32487

8 years ago[runtime] Add 2.0 build assemblies to remapping table. Fixes #32561
Marek Safar [Fri, 31 Jul 2015 11:50:47 +0000 (13:50 +0200)]
[runtime] Add 2.0 build assemblies to remapping table. Fixes #32561

8 years ago[reflection] Filter out private accessors when queried from derived types. Fixes...
Marek Safar [Fri, 31 Jul 2015 07:33:17 +0000 (09:33 +0200)]
[reflection] Filter out private accessors when queried from derived types. Fixes #32609

8 years agoParallelize the generation of aot images for make fullaotcheck.
Zoltan Varga [Fri, 31 Jul 2015 02:45:30 +0000 (22:45 -0400)]
Parallelize the generation of aot images for make fullaotcheck.

8 years ago[aot] Fix the caching of runtime-invoke wrappers after the wrapper cache changes...
Zoltan Varga [Thu, 30 Jul 2015 21:24:19 +0000 (17:24 -0400)]
[aot] Fix the caching of runtime-invoke wrappers after the wrapper cache changes, two methods with the same signature might have different runtime invoke wrappers now, and the caching would break their lookup.

8 years ago[runtime] Support quoted assembly names. Fixes #32591
Marek Safar [Thu, 30 Jul 2015 17:15:56 +0000 (19:15 +0200)]
[runtime] Support quoted assembly names. Fixes #32591

8 years agoMerge pull request #1840 from ludovic-henry/iolayer-thread-interrupt
Rodrigo Kumpera [Thu, 30 Jul 2015 14:48:44 +0000 (10:48 -0400)]
Merge pull request #1840 from ludovic-henry/iolayer-thread-interrupt

[runtime] Implement wait interrupt in thread info, instead of in the io-layer

8 years ago[System]: Fix WebConnectionStream.SetHeadersAsync() logic for #31830.
Martin Baulig [Thu, 30 Jul 2015 13:28:28 +0000 (15:28 +0200)]
[System]: Fix WebConnectionStream.SetHeadersAsync() logic for #31830.

This fixes commits 8ccfe0f8ff71d18151f8aad90d0855dfd2d2a723 and
c109f9ca03d38e608cbd85cb2fdf8cfaf55bb97c.

Added new test:
https://github.com/xamarin/web-tests/commit/d60bc3f637ca2bf4aa1379b839d878e224d344c8

(cherry picked from commit c133880bc407baed5d46222e20677d1427b32b4d)

8 years agoAdd missing {
Neale Ferguson [Thu, 30 Jul 2015 11:09:37 +0000 (07:09 -0400)]
Add missing {

8 years ago[amd64] Allocate stack space for saving argument registers in the sdb trampoline...
Zoltan Varga [Thu, 30 Jul 2015 03:04:42 +0000 (23:04 -0400)]
[amd64] Allocate stack space for saving argument registers in the sdb trampoline code on winx64.

8 years ago[amd64] Allocate stack space for saving argument registers in the generic trampoline...
Zoltan Varga [Thu, 30 Jul 2015 02:43:05 +0000 (22:43 -0400)]
[amd64] Allocate stack space for saving argument registers in the generic trampoline code on winx64.

8 years ago[jit] Avoid emitting the DW_CFA_mono_advance_loc mono extension opcode into the ...
Zoltan Varga [Thu, 30 Jul 2015 02:29:10 +0000 (22:29 -0400)]
[jit] Avoid emitting the DW_CFA_mono_advance_loc mono extension opcode into the .debug_frame section.

8 years agoMerge pull request #1929 from BrzVlad/feature-unwind4yall
Vlad Brezae [Thu, 30 Jul 2015 02:08:18 +0000 (19:08 -0700)]
Merge pull request #1929 from BrzVlad/feature-unwind4yall

Feature trampoline unwind info

8 years ago[arm] Provide unwind info for tls thunks
Vlad Brezae [Wed, 15 Jul 2015 23:40:29 +0000 (23:40 +0000)]
[arm] Provide unwind info for tls thunks

We don't try to unwind from the fallback thunks since they call external code anyway.

8 years ago[arm] Simplify declaration of global symbols in asm
Vlad Brezae [Wed, 15 Jul 2015 22:43:09 +0000 (22:43 +0000)]
[arm] Simplify declaration of global symbols in asm

8 years ago[arm] Fix unwind info for managed methods
Vlad Brezae [Fri, 19 Jun 2015 00:55:46 +0000 (17:55 -0700)]
[arm] Fix unwind info for managed methods

Add unwind information for the epilog.

8 years ago[aot] Provide unwind info for plt trampolines
Vlad Brezae [Mon, 15 Jun 2015 23:23:18 +0000 (16:23 -0700)]
[aot] Provide unwind info for plt trampolines

8 years ago[arm] Add unwind info for trampolines
Vlad Brezae [Thu, 11 Jun 2015 00:58:25 +0000 (00:58 +0000)]
[arm] Add unwind info for trampolines

8 years ago[x86] Add unwind info for registered trampolines.
Vlad Brezae [Fri, 15 May 2015 22:57:15 +0000 (15:57 -0700)]
[x86] Add unwind info for registered trampolines.

8 years ago[amd64] Add unwind info for registered trampolines.
Vlad Brezae [Fri, 8 May 2015 23:23:56 +0000 (16:23 -0700)]
[amd64] Add unwind info for registered trampolines.

8 years agoRemove an obsolete comment.
Zoltan Varga [Wed, 29 Jul 2015 22:29:24 +0000 (18:29 -0400)]
Remove an obsolete comment.

8 years agoRevert "Report XDG Documents directory for SpecialFolder.MyDocuments"
Zoltan Varga [Wed, 29 Jul 2015 22:15:37 +0000 (18:15 -0400)]
Revert "Report XDG Documents directory for SpecialFolder.MyDocuments"

This reverts commit d6553bc988dd9f2a3c535c6075868f233ecd3302.

Revert this as it breaks the build.

8 years ago[runtime] Register tramp jit info to the corresponding domain
Vlad Brezae [Sat, 6 Jun 2015 01:13:04 +0000 (18:13 -0700)]
[runtime] Register tramp jit info to the corresponding domain

8 years ago[x86] Register throw trampolines
Vlad Brezae [Fri, 12 Jun 2015 00:45:45 +0000 (17:45 -0700)]
[x86] Register throw trampolines

8 years ago[runtime] Register unbox trampolines
Vlad Brezae [Tue, 2 Jun 2015 20:58:53 +0000 (13:58 -0700)]
[runtime] Register unbox trampolines

8 years ago[arm] Register and add unwind information for page trampolines.
Vlad Brezae [Fri, 10 Jul 2015 20:57:23 +0000 (13:57 -0700)]
[arm] Register and add unwind information for page trampolines.

8 years ago[runtime] Register imt trampolines
Vlad Brezae [Tue, 2 Jun 2015 19:04:38 +0000 (12:04 -0700)]
[runtime] Register imt trampolines

8 years ago[runtime] Register get gsharedvt arg trampolines
Vlad Brezae [Tue, 2 Jun 2015 19:02:47 +0000 (12:02 -0700)]
[runtime] Register get gsharedvt arg trampolines

8 years ago[runtime] Register static rgctx trampolines
Vlad Brezae [Tue, 2 Jun 2015 18:48:46 +0000 (11:48 -0700)]
[runtime] Register static rgctx trampolines

8 years ago[runtime] Register tramp infos for delegate invoke trampolines
Vlad Brezae [Tue, 12 May 2015 20:38:37 +0000 (13:38 -0700)]
[runtime] Register tramp infos for delegate invoke trampolines

Also refactor MonoTrampInfo creation, similar to the other trampolines.

8 years ago[x86] Fix usage of virtual delegate invoke tramps for aot
Vlad Brezae [Wed, 15 Jul 2015 01:59:43 +0000 (18:59 -0700)]
[x86] Fix usage of virtual delegate invoke tramps for aot

We need to fallback if the vtable slot exceedes the limit.

8 years ago[runtime] Fix lookup of aot symbol for imt delegate invoke tramps
Vlad Brezae [Wed, 15 Jul 2015 01:53:59 +0000 (18:53 -0700)]
[runtime] Fix lookup of aot symbol for imt delegate invoke tramps

Offset for calls through imt is negative

8 years ago[runtime] Add missing delegate invoke trampolines
Vlad Brezae [Wed, 15 Jul 2015 02:49:34 +0000 (19:49 -0700)]
[runtime] Add missing delegate invoke trampolines

8 years ago[amd64] Fix failure to emit imt delegate invoke tramps
Vlad Brezae [Wed, 15 Jul 2015 01:45:35 +0000 (18:45 -0700)]
[amd64] Fix failure to emit imt delegate invoke tramps

The problem was due to implicit casting of the dividend to unsigned (which overflows) when divided by unsigned.

8 years ago[aot] Register tramp infos when loading trampolines in aot.
Vlad Brezae [Thu, 9 Jul 2015 23:52:46 +0000 (16:52 -0700)]
[aot] Register tramp infos when loading trampolines in aot.