mono.git
8 years ago[acceptance-tests] Fix tarball build and rename "check" target to "check-full"
Alexander Köplinger [Tue, 20 Oct 2015 13:14:34 +0000 (15:14 +0200)]
[acceptance-tests] Fix tarball build and rename "check" target to "check-full"

The acceptance-tests folder wasn't getting included in the tarball, adding the folder
to the SUBDIRS in the top-level Makefile.am fixes this. Additionally, EXTRA_DISTFILES
doesn't work outside of mcs/ so rename it to EXTRA_DIST.

Since we don't want a top-level "make check" to recurse into acceptance-tests just yet,
rename the check target to check-full so nothing gets run by default.

8 years agoFixes mobile build
Marek Safar [Tue, 20 Oct 2015 12:53:44 +0000 (14:53 +0200)]
Fixes mobile build

8 years ago[mdoc] Update expected test results after private members change in mscorlib
Marek Safar [Tue, 20 Oct 2015 10:01:25 +0000 (12:01 +0200)]
[mdoc] Update expected test results after private members change in mscorlib

8 years ago[System.Runtime.Caching] Update test due to .net fixes
Marek Safar [Tue, 20 Oct 2015 09:47:06 +0000 (11:47 +0200)]
[System.Runtime.Caching] Update test due to .net fixes

8 years ago[system.componentmodel.dataannotations] Fix incorrect IsValid_Object_ValidationContex...
Marek Safar [Tue, 20 Oct 2015 09:36:52 +0000 (11:36 +0200)]
[system.componentmodel.dataannotations] Fix incorrect IsValid_Object_ValidationContext_CrossCallsWithNIEX test

8 years ago[system.data] Remove empty ending character from resource constants
Marek Safar [Tue, 20 Oct 2015 08:02:32 +0000 (10:02 +0200)]
[system.data] Remove empty ending character from resource constants

8 years ago[gsharedvt] Inflate methods properly in one case. Fixes #34926.
Zoltan Varga [Tue, 20 Oct 2015 02:52:41 +0000 (22:52 -0400)]
[gsharedvt] Inflate methods properly in one case. Fixes #34926.

8 years agoMerge pull request #2148 from akoeplinger/remove-old-runtime-versions
Alexander Köplinger [Mon, 19 Oct 2015 20:26:18 +0000 (22:26 +0200)]
Merge pull request #2148 from akoeplinger/remove-old-runtime-versions

[runtime] Remove explicit support for v4.0.30128 and v4.0.20506

8 years ago[runtime] Remove explicit support for v4.0.30128 and v4.0.20506
Alexander Köplinger [Mon, 19 Oct 2015 19:51:41 +0000 (21:51 +0200)]
[runtime] Remove explicit support for v4.0.30128 and v4.0.20506

These versions were still binding to the 4.0 mscorlib, which is a reference-only assembly now
and isn't intended for being used at runtime.

This issue manifested itself when someone used e.g. <supportedRuntime version="v4.0.20506"/> in
the app.config, causing the runtime to try loading that version and then bailing out with
"Corlib not in sync with this runtime: expected corlib version 117, found 111." (with 111 being
the corlib version at the time the reference assemblies were generated).

The fix is to remove the specific versions from the supported_runtimes array, causing programs
to automatically use the newest version instead.

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=34675

Other reports:

https://youtrack.jetbrains.com/issue/TW-42700
https://youtrack.jetbrains.com/issue/TW-41337
http://stackoverflow.com/questions/29988698/teamcity-nunitlauncher-running-on-linux-mono-gives-corlib-not-in-sync-with-th

8 years ago[llvm] Fix the handling of r4 arguments during calls. Fixes #35044.
Zoltan Varga [Mon, 19 Oct 2015 19:47:17 +0000 (15:47 -0400)]
[llvm] Fix the handling of r4 arguments during calls. Fixes #35044.

8 years agoBump reference source.
Martin Baulig [Mon, 19 Oct 2015 17:58:45 +0000 (13:58 -0400)]
Bump reference source.

8 years ago[runtime] Remove unused MONO_IS_CROSS_COMPILE define.
João Matos [Mon, 19 Oct 2015 16:44:29 +0000 (17:44 +0100)]
[runtime] Remove unused MONO_IS_CROSS_COMPILE define.

8 years ago[acceptance-tests] Convert Ruby script to Python
Alexander Köplinger [Mon, 19 Oct 2015 14:02:46 +0000 (16:02 +0200)]
[acceptance-tests] Convert Ruby script to Python

Most of the other scripts in the repo use Python and we decided to converge on that one.

8 years ago[acceptance-tests] Integrate Roslyn, CoreCLR and ms-test-suite into acceptance-tests
Alexander Köplinger [Mon, 19 Oct 2015 15:06:46 +0000 (17:06 +0200)]
[acceptance-tests] Integrate Roslyn, CoreCLR and ms-test-suite into acceptance-tests

This commit integrates the CoreCLR, Roslyn and ms-test-suite (which is Xamarin-internal, but should just print a warning for someone without access).
Running the tests suites can be done with 'make check-coreclr', 'make check-roslyn' and 'make check-ms-test-suite', or all of them with make check in the acceptance-tests folder.
They won't run on a top-level make check though, which is intended until every test suite is fixed.

This uses a custom submodule system that doesn't rely on git submodules (which are annoying when the repo is large and we only need them for tests). Instead we can fetch repositories on demand.

History (before squashing into smaller chunks):

- Rename check-{testsuite} make target to validate-{testsuite}. The former can be easily confused with the "check" target that runs the tests.
- Move acceptance-tests Makefile to automake, so we can avoid hardcoding paths
- Copy System.Console facade to CoreCLR IL test directories. Otherwise most of the IL tests fail as they rely on the System.Console assembly reference.
- Update README.md to mention the tests
- Use $(MAKE) instead of plain make and pass -C instead of cd'ing to directory
- Exit when the repository can't be cloned and print a note about the ms-test-suite repo. The ms-test-suite repo is Xamarin-internal so it'll error out in public.
- Integrate MS CoreCLR runtime tests into Mono's test infrastructure
- Get rid of intermediate msg file and pipe straight to git
- Rename README to CONFIG since we don't store metadata in readme.md anymore
- Fix comparison in versions.mk to be sh compliant. It relied on bashism before.

8 years ago[acceptance-tests] Add code from xamarin/mono extensions branch
Zoltan Varga [Wed, 7 Oct 2015 14:32:13 +0000 (16:32 +0200)]
[acceptance-tests] Add code from xamarin/mono extensions branch

This provides a "git submodule"-like tool which can be used to
checkout optional repositories.

8 years ago[tests] Add a new --testsuite-name parameter to managed test runner
Alexander Köplinger [Mon, 19 Oct 2015 14:36:58 +0000 (16:36 +0200)]
[tests] Add a new --testsuite-name parameter to managed test runner

Use it for the gshared tests, they were all (over-)writing the same TestResults_runtime.xml before.

8 years ago[tests] Add a new --expected-exit-code option to the managed test-runner
Alexander Köplinger [Mon, 19 Oct 2015 14:33:54 +0000 (16:33 +0200)]
[tests] Add a new --expected-exit-code option to the managed test-runner

8 years agoMerge pull request #2136 from esdrubal/uridotsegment
Marcos Henrich [Mon, 19 Oct 2015 13:01:30 +0000 (14:01 +0100)]
Merge pull request #2136 from esdrubal/uridotsegment

[System] Fixed dots trimmed from segments.

8 years agojit] Replace a few more #ifdefs with flags.
Zoltan Varga [Mon, 19 Oct 2015 03:48:45 +0000 (23:48 -0400)]
jit] Replace a few more #ifdefs with flags.

8 years agoFix the build.
Zoltan Varga [Sun, 18 Oct 2015 23:59:19 +0000 (19:59 -0400)]
Fix the build.

8 years ago[jit] Add a new MonoBackend structure which will contain backend constants/functions...
Zoltan Varga [Sun, 18 Oct 2015 23:03:07 +0000 (19:03 -0400)]
[jit] Add a new MonoBackend structure which will contain backend constants/functions. Move the arch specific flags from MonoCompile to this structure.

8 years agojit] Replace a few more #ifdefs with MonoCompile flags.
Zoltan Varga [Sun, 18 Oct 2015 03:24:07 +0000 (23:24 -0400)]
jit] Replace a few more #ifdefs with MonoCompile flags.

8 years ago[jit] Replace a few more #ifdefs with MonoCompile flags.
Zoltan Varga [Sun, 18 Oct 2015 01:13:03 +0000 (21:13 -0400)]
[jit] Replace a few more #ifdefs with MonoCompile flags.

8 years ago[jit] Replace a few arch-specific #ifdef blocks with MonoCompile flags.
Zoltan Varga [Sun, 18 Oct 2015 00:55:24 +0000 (20:55 -0400)]
[jit] Replace a few arch-specific #ifdef blocks with MonoCompile flags.

8 years ago[jit] Add flags to MonoCompile to allow the removal of arch-specific ifdefs from...
Zoltan Varga [Sun, 18 Oct 2015 00:45:54 +0000 (20:45 -0400)]
[jit] Add flags to MonoCompile to allow the removal of arch-specific ifdefs from the jit code. Add a mini_init_cfg () function to initialize them using the arch defines.

8 years ago[threads] Fix another sleep compilation error on win32
Alexander Köplinger [Sat, 17 Oct 2015 19:42:44 +0000 (12:42 -0700)]
[threads] Fix another sleep compilation error on win32

One case was missed in 2ad1993b516244d0ae242a2eaa795d561f8ac02a

8 years agoMake the thread dump code safe by doing only async safe operations when a thread...
Zoltan Varga [Sat, 17 Oct 2015 05:37:47 +0000 (01:37 -0400)]
Make the thread dump code safe by doing only async safe operations when a thread is suspended.

8 years ago[threads] Fix sleep compilation error on win32
Ludovic Henry [Sat, 17 Oct 2015 17:54:57 +0000 (18:54 +0100)]
[threads] Fix sleep compilation error on win32

8 years agoMerge pull request #2139 from akoeplinger/symbolicate-test-fix
Marcos Henrich [Sat, 17 Oct 2015 15:57:10 +0000 (16:57 +0100)]
Merge pull request #2139 from akoeplinger/symbolicate-test-fix

[mono-symbolicate] Skip tests if AOT isn't supported by the current arch

8 years agoFixes build
Marek Safar [Sat, 17 Oct 2015 07:16:24 +0000 (09:16 +0200)]
Fixes build

8 years agoMerge pull request #2144 from dlech/patch-1
Zoltan Varga [Sat, 17 Oct 2015 04:29:03 +0000 (00:29 -0400)]
Merge pull request #2144 from dlech/patch-1

Fix filename in header

8 years agoFix filename in header
David Lechner [Sat, 17 Oct 2015 02:09:36 +0000 (21:09 -0500)]
Fix filename in header

8 years ago[amd64] Allow returning of structs in register pairs.
Zoltan Varga [Sat, 17 Oct 2015 00:05:05 +0000 (20:05 -0400)]
[amd64] Allow returning of structs in register pairs.

8 years ago[llvm] Fix returning of values in a register pair.
Zoltan Varga [Sat, 17 Oct 2015 00:04:21 +0000 (20:04 -0400)]
[llvm] Fix returning of values in a register pair.

8 years ago[llvm] Fix JIT support.
Zoltan Varga [Fri, 16 Oct 2015 19:47:54 +0000 (15:47 -0400)]
[llvm] Fix JIT support.

8 years ago[runtime] Disable the emission of stubs debug info on apple, its no longer supported...
Zoltan Varga [Fri, 16 Oct 2015 19:47:38 +0000 (15:47 -0400)]
[runtime] Disable the emission of stubs debug info on apple, its no longer supported by clang.

8 years agoMerge pull request #2143 from akoeplinger/refactor-mono-security-providers
Alexander Köplinger [Fri, 16 Oct 2015 22:14:47 +0000 (00:14 +0200)]
Merge pull request #2143 from akoeplinger/refactor-mono-security-providers

[Mono.Security.Providers] Refactor providers into distinct folders

8 years agoBump reference source
Marek Safar [Fri, 16 Oct 2015 22:10:23 +0000 (00:10 +0200)]
Bump reference source

8 years ago[corlib] Implement UnsafeEnumCastLong
Marek Safar [Fri, 16 Oct 2015 22:08:30 +0000 (00:08 +0200)]
[corlib] Implement UnsafeEnumCastLong

8 years ago[bcl] Update to 4.6 referencesource
Marek Safar [Fri, 16 Oct 2015 21:32:35 +0000 (23:32 +0200)]
[bcl] Update to 4.6 referencesource

8 years ago[Mono.Security.Providers] Refactor providers into distinct folders
Alexander Köplinger [Fri, 16 Oct 2015 20:11:33 +0000 (22:11 +0200)]
[Mono.Security.Providers] Refactor providers into distinct folders

Build the two libraries Mono.Security.Providers.DotNet and Mono.Security.Providers.NewSystemSource just like
every other class library instead of duplicating the logic into the subfolders.

This also fixes "make dist".

8 years ago[WinForms] ComboBox, ListBox and TextBox should use Control Foreground+Background
Marek Habersack [Fri, 16 Oct 2015 19:39:29 +0000 (21:39 +0200)]
[WinForms] ComboBox, ListBox and TextBox should use Control Foreground+Background

They have been using Window Foreground+Background so far which make them unreadable
on systms with dark themes. This change makes them behave.

8 years ago[TLS]: Make ValidationResult.MonoSslPolicyErrors nullable.
Martin Baulig [Tue, 13 Oct 2015 21:56:35 +0000 (17:56 -0400)]
[TLS]: Make ValidationResult.MonoSslPolicyErrors nullable.

(cherry picked from commit abfac54c47312c00f22fffef821f8889cbc67098)
(cherry picked from commit ccb7bfc930f4265b685eada8e73ee81acaae5963)

8 years ago[System]: Remove the TrustEvaluateSsl(MX.X509CertificateCollection...) overloads.
Martin Baulig [Fri, 16 Oct 2015 16:36:29 +0000 (12:36 -0400)]
[System]: Remove the TrustEvaluateSsl(MX.X509CertificateCollection...) overloads.

We now use SSCX.X509Certificate2Collection in ChainValidationHelper.

8 years agoMerge pull request #2141 from akoeplinger/fix-wrong-disableaot-define
João Matos [Fri, 16 Oct 2015 18:25:57 +0000 (19:25 +0100)]
Merge pull request #2141 from akoeplinger/fix-wrong-disableaot-define

[runtime] Rename DISABLE_AOT_COMPILER back to DISABLE_AOT

8 years ago[Process] Do not use Exited as it's racy with Start and BeginOutputReadLine/BeginErro...
Ludovic Henry [Fri, 16 Oct 2015 17:31:19 +0000 (18:31 +0100)]
[Process] Do not use Exited as it's racy with Start and BeginOutputReadLine/BeginErrorReadLine

The issue can arise if the Process is going to run faster than the call
between Start and BeginOutputReadLine/BeginErrorReadLine. To increase
the chance of the race happening, insert a Thread.Sleep (1000) between
Start and BeginOutputReadLine/BeginErrorReadLine.

This race exists because the WaitForExit in the background thread in the
Process, will first wait the process to finish, then try to wait for the
output to finish, but it will be null as BeginOutputReadLine has not been
called yet, then try to wait on error (same issue as output), and finally
call the Exited event, which will close the stdout and stderr TextWriter.
The call to BeginOutputReadLine and BeginErrorReadLine will finally happen
(which is still correct as the output and error of the Process has not
been closed yet), then calling the OutputDataReceived and ErrorDataReceived
callbacks which will try to write to the closed stdout and stderr
TextWriter.

Simply enqueuing a ThreadPool work item, which will wait for the process
to exit manually, simply resolve this issue, as we guarantee that the
call to WaitForExit happens after BeginOutputReadLine/BeginErrorReadLine,
and is not racing with it.

8 years ago[corlib] Add few reference source dependencies
Marek Safar [Fri, 16 Oct 2015 16:42:10 +0000 (18:42 +0200)]
[corlib] Add few reference source dependencies

8 years agoAll MARTIN_FIXME's have been taken care of.
Martin Baulig [Fri, 16 Oct 2015 16:33:02 +0000 (12:33 -0400)]
All MARTIN_FIXME's have been taken care of.

8 years ago[Mono.Security]: Check 'CertificateValidationHelper.SupportsX509Chain' before attempt...
Martin Baulig [Tue, 8 Sep 2015 13:46:54 +0000 (15:46 +0200)]
[Mono.Security]: Check 'CertificateValidationHelper.SupportsX509Chain' before attempting to compute the chain.

Computing the X509Chain is not supported on OS X and iOS because the OS does
not give us access to the root certificates - this would throw an Exception
at runtime.

(cherry picked from commit 44d34a17c1bf305e39bcfc277cc7add48560d899)
(cherry picked from commit 504328ec43d9d917c1f140ecf89f253ab2be39ec)

8 years agoForgot to remove one MARTIN_FIXME.
Martin Baulig [Fri, 16 Oct 2015 16:12:19 +0000 (12:12 -0400)]
Forgot to remove one MARTIN_FIXME.

8 years ago[msvc] Remove left over project guid from mono.sln
Alexander Köplinger [Fri, 16 Oct 2015 14:14:14 +0000 (16:14 +0200)]
[msvc] Remove left over project guid from mono.sln

The project was removed from the solution in 735fc51cc092ef89ca08b8304c582af0bf60b8e4, but one instance was missed.
This should fix the Windows build on Jenkins.

8 years ago[mono-symbolicate] Skip AOT tests if AOT isn't supported by the current arch
Alexander Köplinger [Fri, 16 Oct 2015 11:48:57 +0000 (13:48 +0200)]
[mono-symbolicate] Skip AOT tests if AOT isn't supported by the current arch

This fixes Jenkins errors on architectures like s390x which don't support AOT.

8 years ago[runtime] Rename DISABLE_AOT_COMPILER back to DISABLE_AOT
Alexander Köplinger [Fri, 16 Oct 2015 13:35:33 +0000 (15:35 +0200)]
[runtime] Rename DISABLE_AOT_COMPILER back to DISABLE_AOT

The original rename in c4aa103e486ac7116d78be3f3efecf49bfd29335 was done by accident,
the rest of the codebase still used the old name so disabling AOT didn't actually work.

Renaming this back to the original name and fix a few instances where methods weren't added
in the DISABLE_AOT case.

This allows a `--enable-minmal=aot` build to succeed and actually work.

8 years agoRevert "[process] Use same behavior as .NET"
Ludovic Henry [Fri, 16 Oct 2015 10:00:58 +0000 (11:00 +0100)]
Revert "[process] Use same behavior as .NET"

It broke the android build

This reverts commit c688b8c84ca3b26a1025a2194314183d2a880086.

8 years ago[runtime] Simplify the caching of gshared generic params now that they point to their...
Zoltan Varga [Fri, 16 Oct 2015 08:07:01 +0000 (04:07 -0400)]
[runtime] Simplify the caching of gshared generic params now that they point to their parent gparam.

8 years ago[runtime] Add a new MonoGSharedGenericParam structure as an extension of the MonoGene...
Zoltan Varga [Fri, 16 Oct 2015 07:58:31 +0000 (03:58 -0400)]
[runtime] Add a new MonoGSharedGenericParam structure as an extension of the MonoGenericParamFull structure, put the 'parent' field there.

8 years ago[amd64] Split the valuetype argument passing code into win64 and non-win64 versions...
Zoltan Varga [Fri, 16 Oct 2015 03:11:20 +0000 (23:11 -0400)]
[amd64] Split the valuetype argument passing code into win64 and non-win64 versions to simplify both.

8 years ago[aot] Create constrained gparams using the same mini_get_shared_gparam () function...
Zoltan Varga [Fri, 16 Oct 2015 00:13:59 +0000 (20:13 -0400)]
[aot] Create constrained gparams using the same mini_get_shared_gparam () function used by the rest of the code, so its properly unique-ed.

8 years ago[io-layer] Remove Sleep and SleepEx
Ludovic Henry [Thu, 9 Jul 2015 20:20:26 +0000 (17:20 -0300)]
[io-layer] Remove Sleep and SleepEx

8 years ago[io-layer] Remove GetCurrentThreadId
Ludovic Henry [Thu, 9 Jul 2015 19:18:07 +0000 (16:18 -0300)]
[io-layer] Remove GetCurrentThreadId

8 years ago[runtime] Remove dead code
Ludovic Henry [Fri, 10 Jul 2015 00:42:10 +0000 (21:42 -0300)]
[runtime] Remove dead code

8 years ago[sdb] Fix state initialization of suspended threads to work when the debugger thread...
Rodrigo Kumpera [Tue, 13 Oct 2015 22:33:00 +0000 (18:33 -0400)]
[sdb] Fix state initialization of suspended threads to work when the debugger thread is not attached. Fixes #34750

The problem happens because thread_interrupt runs in the debugger thread (suspend initiator).

thread_interrupt then calls mono_thread_state_init_from_monoctx which collects the state of the current thread
which is definitely not what we wanted.

There used to be some compensation code after calling mono_thread_state_init_from_monoctx to actually init the state properly.
This is why it worked, at all.

Thew problem is that the debugger thread now might not attach at all under some circumstances, which would trigger
mono_thread_state_init_from_monoctx to return FALSE and trip into the assert.

The fix is to simply not use mono_thread_state_init_from_monoctx at all, just copy the state from data. This fix has the
bonus of getting the domain correctly.

8 years agoMerge pull request #2113 from ludovic-henry/coop-socket-abort
Rodrigo Kumpera [Thu, 15 Oct 2015 18:56:40 +0000 (14:56 -0400)]
Merge pull request #2113 from ludovic-henry/coop-socket-abort

[socket] Make blocking syscall abortable on signal-less platforms

8 years agoMerge pull request #2123 from kumpera/verifier-fix
Rodrigo Kumpera [Thu, 15 Oct 2015 18:53:28 +0000 (14:53 -0400)]
Merge pull request #2123 from kumpera/verifier-fix

[verifier] Fix the verifiers to handle Roslyn style fixed blocks.

8 years agoFix MSVC build after 16570265149730ec6a4760cc0fa34decc1a9d981
Alexis Christoforides [Thu, 15 Oct 2015 18:27:49 +0000 (14:27 -0400)]
Fix MSVC build after 16570265149730ec6a4760cc0fa34decc1a9d981

8 years agoMerge pull request #2127 from joelmartinez/mdoc-multiassembly-squashed
Miguel de Icaza [Thu, 15 Oct 2015 18:00:16 +0000 (14:00 -0400)]
Merge pull request #2127 from joelmartinez/mdoc-multiassembly-squashed

[mdoc] `multiassembly` option for duplicated types

8 years ago[process] Use same behavior as .NET
Ludovic Henry [Thu, 15 Oct 2015 16:49:06 +0000 (17:49 +0100)]
[process] Use same behavior as .NET

8 years agoMerge pull request #2137 from fplucas/patch-1
João Matos [Thu, 15 Oct 2015 14:36:00 +0000 (15:36 +0100)]
Merge pull request #2137 from fplucas/patch-1

Fixing the broken icon of centos-s390x

8 years agoFixing the broken icon of centos-s390x
Lucas [Thu, 15 Oct 2015 14:32:17 +0000 (11:32 -0300)]
Fixing the broken icon of centos-s390x

8 years ago[System] Fixed dots trimmed from segments.
Marcos Henrich [Thu, 15 Oct 2015 14:01:27 +0000 (15:01 +0100)]
[System] Fixed dots trimmed from segments.

Before .NET 4.5 dots were trimmed from the end of uri path segments.

In .NET 4.5 IRI parsing is enabled by default and dot are no longer
trimmed from the end of path segments.

This commit disables dot trimming when Uri.IriParsing is true.

Fixes #29864.

8 years agoMerge pull request #2134 from akoeplinger/bug-34334
Alexander Köplinger [Thu, 15 Oct 2015 13:44:04 +0000 (15:44 +0200)]
Merge pull request #2134 from akoeplinger/bug-34334

[interpreter] Implement comparing string values in (Not)EqualInstruction

8 years ago[runtime] Switch ARM backend use to use g_print instead of printf.
João Matos [Thu, 15 Oct 2015 13:34:53 +0000 (14:34 +0100)]
[runtime] Switch ARM backend use to use g_print instead of printf.

Sorry about the churn, the previous commit contained an unintended chunk.

8 years agoRevert "[runtime] Switch ARM backend use to use g_print instead of printf."
João Matos [Thu, 15 Oct 2015 13:26:19 +0000 (14:26 +0100)]
Revert "[runtime] Switch ARM backend use to use g_print instead of printf."

This reverts commit 8e9f93be24f2b8b744f9ad31292f3f74a5caf411.

8 years ago[runtime] Switch ARM backend use to use g_print instead of printf.
João Matos [Thu, 15 Oct 2015 13:24:10 +0000 (14:24 +0100)]
[runtime] Switch ARM backend use to use g_print instead of printf.

8 years ago[runtime] Simplify ARM mono_arch_flush_icache.
João Matos [Wed, 14 Oct 2015 16:50:00 +0000 (17:50 +0100)]
[runtime] Simplify ARM mono_arch_flush_icache.

We do not support compiling with older versions of GCC anymore so most of this should be just dead code.

8 years ago[amd64] Remove the special casing of TYPEDBYREF in the amd64 backend, its not needed.
Zoltan Varga [Thu, 15 Oct 2015 04:28:56 +0000 (00:28 -0400)]
[amd64] Remove the special casing of TYPEDBYREF in the amd64 backend, its not needed.

8 years ago[llvmonly] Call methods in the same assembly directly.
Zoltan Varga [Thu, 15 Oct 2015 02:11:21 +0000 (22:11 -0400)]
[llvmonly] Call methods in the same assembly directly.

8 years ago[llvmonly] Update comments.
Zoltan Varga [Thu, 15 Oct 2015 00:42:32 +0000 (20:42 -0400)]
[llvmonly] Update comments.

8 years ago[llvmonly] Use the PreserveAll calling convention for the init functions.
Zoltan Varga [Thu, 15 Oct 2015 00:42:06 +0000 (20:42 -0400)]
[llvmonly] Use the PreserveAll calling convention for the init functions.

8 years ago[llvmonly] Factor out the initialization code into separate helper functions to save...
Zoltan Varga [Thu, 15 Oct 2015 00:21:53 +0000 (20:21 -0400)]
[llvmonly] Factor out the initialization code into separate helper functions to save space.

8 years ago[ppdb] Check that PE file timestamp as well when matching assemblies and pdb files.
Zoltan Varga [Wed, 14 Oct 2015 23:49:34 +0000 (19:49 -0400)]
[ppdb] Check that PE file timestamp as well when matching assemblies and pdb files.

8 years agoRevert "[System]: WebConnection: improve chunked reads and async callbacks."
Martin Baulig [Wed, 14 Oct 2015 23:25:54 +0000 (19:25 -0400)]
Revert "[System]: WebConnection: improve chunked reads and async callbacks."

This reverts commit 9027f0ad28bf733ebb8ac9964c78c22853ca93c7.

8 years ago[System/TLS]: Switch to the new ChainValidationHelper.
Martin Baulig [Wed, 14 Oct 2015 20:22:05 +0000 (16:22 -0400)]
[System/TLS]: Switch to the new ChainValidationHelper.

* Removed Mono.Security.Protocol.Tls.ValidationResult, use
  Mono.Security.Interface instead.  This is an API breaking
  change, but you can fix your application by simply adding
  the new using directive.

  The rationale behind this is to avoid a dependency on the
  Mono.Security.Protocol.Tls namespace when building and
  related classes when building the new TLS stack.

* Enable ChainValidationHelper in WebConnection, LegacySslStream
  and SslStream.

  The custom conditionals that were previously required for the
  mobile profiles are now gone as ChainValidationHelper already
  handles that internally.

* This is an internal API, the public front-end is
  Mono.Security.Interface.CertificateValidationHelper.

  CertificateValidationHelper can be used to access the system
  certificate validator on OS X and iOS; we do not compute the
  X509Chain on these platforms as it's not supported by the OS.

(cherry picked from commit 9713f35878dd90fe87423b5052b4f82ddc0b87f0)

8 years ago[llvmonly] Add more preinitialized got slots, refactor the code which emits them...
Zoltan Varga [Wed, 14 Oct 2015 21:54:34 +0000 (17:54 -0400)]
[llvmonly] Add more preinitialized got slots, refactor the code which emits them a little.

8 years ago[ppdb] Update to spec version v1.0. Fix decoding of line number info.
Zoltan Varga [Wed, 14 Oct 2015 20:25:29 +0000 (16:25 -0400)]
[ppdb] Update to spec version v1.0. Fix decoding of line number info.

8 years ago[ppdb] Update the code which checks whenever the assembly and the pdb files match...
Zoltan Varga [Wed, 14 Oct 2015 19:55:36 +0000 (15:55 -0400)]
[ppdb] Update the code which checks whenever the assembly and the pdb files match to spec v1.0.

8 years ago[System/TLS]: Add obsolete ChainValidationHelper.ctor(HttpWebRequest).
Martin Baulig [Wed, 14 Oct 2015 19:27:49 +0000 (15:27 -0400)]
[System/TLS]: Add obsolete ChainValidationHelper.ctor(HttpWebRequest).

This will be removed again laster, but allows us to do a two-step switch
by first switching to the new ChainValidationHelper, then switching to
MonoTlsProvider and friends.

(cherry picked from commit f2e98e82f04dbaa72e48c37d72407000c197fbcb)

8 years ago[System]: API cleanup; make MonoTlsStream.SelectClientCertificate() private static.
Martin Baulig [Wed, 14 Oct 2015 19:24:03 +0000 (15:24 -0400)]
[System]: API cleanup; make MonoTlsStream.SelectClientCertificate() private static.

(cherry picked from commit 8a79bdc2add36cb3da2834dc371499fd94d1737f)
(cherry picked from commit 13168150a77f722afee51df86ba029c91f21ee0c)

8 years ago[interpreter] Implement comparing string values in (Not)EqualInstruction
Alexander Köplinger [Wed, 14 Oct 2015 19:22:59 +0000 (21:22 +0200)]
[interpreter] Implement comparing string values in (Not)EqualInstruction

When comparing a string with null the other checks in the interpreter for type equality didn't catch this case
and this ultimately resulted in a NotImplementedException in EqualInstruction and NotEqualInstruction.

The fix is to handle the TypeCode.String case in those instructions.
We don't need to do it for CreateLifted() as that method only applies for Nullable<T> types which doesn't make sense for string.

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=34334

8 years ago[System]: WebConnection: improve chunked reads and async callbacks.
Martin Baulig [Fri, 22 May 2015 03:11:14 +0000 (05:11 +0200)]
[System]: WebConnection: improve chunked reads and async callbacks.

Make sure we always complete the async operations on error and
also send callbacks outside the lock.

(cherry picked from commit 9027f0ad28bf733ebb8ac9964c78c22853ca93c7)

8 years agoFix the build.
Zoltan Varga [Wed, 14 Oct 2015 19:17:44 +0000 (15:17 -0400)]
Fix the build.

8 years ago[runtime] Fix the configure check for stdc++/c++.
Zoltan Varga [Wed, 14 Oct 2015 18:46:40 +0000 (14:46 -0400)]
[runtime] Fix the configure check for stdc++/c++.

8 years ago[aot] Fix the build when llvm is not enabled.
Zoltan Varga [Wed, 14 Oct 2015 17:08:21 +0000 (13:08 -0400)]
[aot] Fix the build when llvm is not enabled.

8 years ago[runtime] Reworked coop GC stack handling in platforms with restricted access to...
João Matos [Thu, 1 Oct 2015 16:38:38 +0000 (17:38 +0100)]
[runtime] Reworked coop GC stack handling in platforms with restricted access to register contexts.

8 years agoMerge pull request #2106 from lambdageek/dev/bug-29108-part1
João Matos [Wed, 14 Oct 2015 15:34:31 +0000 (16:34 +0100)]
Merge pull request #2106 from lambdageek/dev/bug-29108-part1

GetCallingAssembly() skip past reflection. Fix #29108 - part 1

8 years agoTest that Assembly.GetCallingAssembly() skips MethodBase.Invoke()
Aleksey Kliger [Mon, 5 Oct 2015 15:28:42 +0000 (11:28 -0400)]
Test that Assembly.GetCallingAssembly() skips MethodBase.Invoke()

8 years agoGetCallingAssembly() skip past reflection. Fix #29108 - part 1
Aleksey Kliger [Fri, 2 Oct 2015 18:01:28 +0000 (14:01 -0400)]
GetCallingAssembly() skip past reflection. Fix #29108 - part 1

8 years ago[runtime] Workaround signal() configure check in Android.
João Matos [Wed, 14 Oct 2015 14:17:57 +0000 (15:17 +0100)]
[runtime] Workaround signal() configure check in Android.

So, I broke this on Android back in https://github.com/mono/mono/commit/d3726dcde9ef373157cd533ce8091cdde89dfa8e.

Turns out signal() is defined inline in Android:

static __inline__ __sighandler_t signal(int s, __sighandler_t f)
{
    return bsd_signal(s,f);
}

So we need to hardcode the define in case we're on an Android platform.

Fixes BclTests on Android:

I/mono-stdout( 1200): UnixSignalTest
F/        ( 1200): signal() is not supported by this platform
F/libc    ( 1200): Fatal signal 6 (SIGABRT) at 0x000004b0 (code=-6), thread 1215 (Instrumentation)

8 years ago[llvmonly] Fix the build.
Zoltan Varga [Wed, 14 Oct 2015 05:54:01 +0000 (01:54 -0400)]
[llvmonly] Fix the build.

8 years ago[aot] Rework the handling of preinitialized got slots, instead of hardcoding their...
Zoltan Varga [Wed, 14 Oct 2015 05:44:58 +0000 (01:44 -0400)]
[aot] Rework the handling of preinitialized got slots, instead of hardcoding their offsets into the code, initialize them the same way the other got slots are initialized, by decoding a MonoJumpInfo structure for them, and resolving them using mono_resolve_patch_target ().