Atsushi Eno [Fri, 18 Sep 2015 02:12:32 +0000 (10:12 +0800)]
Merge pull request #1899 from saper/resgencond
[resgen] Implement conditional resources (#if/#ifdef)
Zoltan Varga [Thu, 17 Sep 2015 21:50:39 +0000 (17:50 -0400)]
Revert "[jit] Emit the results of the jit regressions tests in nunit format only when running under jenkins."
This reverts commit
1ef694ae5272dd08f972e74598ec758cb911be89.
Revert this, JENKINS_URL is not an automake variable.
Ludovic Henry [Mon, 14 Sep 2015 14:32:21 +0000 (15:32 +0100)]
[bcl] Fix System.Net.HttpWebRequestTest.GetRequestStream hang
This hang would manifest when running the System test suite, with a thread waiting on a `recv'. This syscall would never be interrupted because the socket it would listen on would never close, as there would still be references to its SafeSocketHandle, so that it would never release the native handle.
The issue came from the fact that, when closing the SocketResponder (via the Dispose and the using), the listening thread would never be aborted/stopped, and it would consequently never be collected, thus never releasing the current socket on which _requestHandler is called, thus never aborting the above `recv' syscall.
The issue would arise with the cooperative GC as well as the premptive one.
Marcos Henrich [Thu, 17 Sep 2015 14:47:31 +0000 (15:47 +0100)]
Merge pull request #2047 from esdrubal/socketreuse
[System] Fix TCP socket reuse.
Ludovic Henry [Wed, 16 Sep 2015 13:11:56 +0000 (14:11 +0100)]
[delegate] Fix NRE on GetHashCode
Marcos Henrich [Wed, 16 Sep 2015 15:21:29 +0000 (16:21 +0100)]
[System] Updated SocketTest.TcpDoubleBind.
Multiple threads listening to the same address and port are not possible
before linux 3.9 kernel, where the socket option SO_REUSEPORT was
introduced.
This commit makes TcpDoubleBind sensible to this OS capability.
Ludovic Henry [Thu, 17 Sep 2015 09:35:08 +0000 (10:35 +0100)]
[math] Fix corlib/System.MathTest.TestPow test #48 on Linux 32bits
Zoltan Varga [Wed, 16 Sep 2015 17:26:09 +0000 (13:26 -0400)]
[amd64] More gsharedvt/cleanup work.
Zoltan Varga [Wed, 16 Sep 2015 16:50:34 +0000 (12:50 -0400)]
Revert "[amd64] More gsharedvt/cleanup work."
This reverts commit
c09ca0fd7ef86f9cd6d591def2fa6a60bc272fa1.
Revert this as it breaks the build.
Ludovic Henry [Wed, 16 Sep 2015 16:17:24 +0000 (17:17 +0100)]
[math] Fix corlib/System.MathTest.TestPow #47 on Linux 32bits
Ludovic Henry [Mon, 14 Sep 2015 17:25:40 +0000 (18:25 +0100)]
[SafeHandle] Cleanup of the code
This is to avoid code duplication and multiline conditions assignement
Marcos Henrich [Wed, 16 Sep 2015 06:05:08 +0000 (07:05 +0100)]
Merge pull request #2056 from esdrubal/urilocal
[System] Fixes TimeZoneInfo.ConvertTimeFromUtc.
Zoltan Varga [Wed, 16 Sep 2015 01:27:06 +0000 (21:27 -0400)]
[amd64] More gsharedvt/cleanup work.
Zoltan Varga [Tue, 15 Sep 2015 23:27:21 +0000 (19:27 -0400)]
[sdb] Fix the aborting of multiple invocations.
Zoltan Varga [Tue, 15 Sep 2015 20:48:48 +0000 (16:48 -0400)]
[sdb] Add a test for aborting invokes.
Zoltan Varga [Tue, 15 Sep 2015 19:38:11 +0000 (15:38 -0400)]
[runtime] Fix a potential buffer overflow in mono_network_get_data (). Fixes #33851.
Zoltan Varga [Tue, 15 Sep 2015 19:04:41 +0000 (15:04 -0400)]
[sdb] Avoid aborting the runtime with a breakpoint signal if Debugger.Break () is called, add a MONO_DEBUG=native-debugger-break option to enable it. Fixes #33952.
Marcos Henrich [Tue, 15 Sep 2015 16:19:43 +0000 (17:19 +0100)]
[corlib] Added fixture ConvertTimeTests_LocalUtc.
ConvertTimeTests_LocalUtc runs ConvertTimeTests fixture with
TimeZoneInfo.Local set to TimeZoneInfo.Utc.
Removed redundant test ConvertFromToUtc_LocalAsUtc.
Marcos Henrich [Tue, 15 Sep 2015 14:09:17 +0000 (15:09 +0100)]
[System] Fixes TimeZoneInfo.ConvertTimeFromUtc.
Fixes TimeZoneInfo.ConvertTimeFromUtc and related tests when
TimeZoneInfo.Local is equal to TimeZoneInfo.Utc.
In .NET if we set TimeZoneInfo.Local to TimeZoneInfo.Utc by using
reflection.
```
var cachedDataField = typeof (TimeZoneInfo).GetField ("s_cachedData",
BindingFlags.Static | BindingFlags.GetField | BindingFlags.NonPublic);
var localField = cachedDataField.FieldType.GetField ("m_localTimeZone",
BindingFlags.Instance | BindingFlags.GetField | BindingFlags.NonPublic);
var localFieldObj = cachedDataField.GetValue (null);
localField.SetValue (localFieldObj, DateTimeKind.Utc);
```
We can observe that `TimeZoneInfo.ConvertTimeFromUtc (DateTime.UtcNow,
TimeZoneInfo.Local).Kind` is DateTimeKind.Utc.
By looking at reference source [code](http://referencesource.microsoft.com/#mscorlib/system/timezoneinfo.cs,211)
we can also confirm that while getting a time zone corresponding kind,
Utc is prioritized over Local.
This commit reverts changes introduced by
60d5b39e46c7c34ed0029bf0818e3ec0d073d3ef that were prioritizing Local
over Utc and changes tests to expect Utc kinds instead of Local when
TimeZoneInfo.Local is equal to TimeZoneInfo.Utc.
Marcos Henrich [Tue, 15 Sep 2015 10:39:34 +0000 (11:39 +0100)]
Merge pull request #2052 from esdrubal/urilocal
[corlib] Fixes TimeZoneInfo.ConvertTimeFromUtc.
Marcos Henrich [Mon, 14 Sep 2015 15:07:17 +0000 (16:07 +0100)]
[corlib] Fixes TimeZoneInfo.ConvertTimeFromUtc.
TimeZoneInfo.ConvertTimeFromUtc(utcDate, TimeZoneInfo.Local) now returns a date of kind
DateTimeKind.Local when TimeZoneInfo.Local is equal to TimeZoneInfo.Utc.
Fixes #33471.
Marcos Henrich [Mon, 14 Sep 2015 15:02:53 +0000 (16:02 +0100)]
[corlib] Tests TimeZoneInfo.ConvertTimeFromUtc.
Tests that TimeZoneInfo.ConvertTimeFromUtc with TimeZoneInfo.Local set to
TimeZoneInfo.Utc returns a date of kind Local.
Covers #334711.
Zoltan Varga [Mon, 14 Sep 2015 19:37:22 +0000 (15:37 -0400)]
Zoltan Varga [Mon, 14 Sep 2015 19:19:39 +0000 (15:19 -0400)]
[runtime] Change MonoDroid->Xamarin.Android in configure output.
Zoltan Varga [Mon, 14 Sep 2015 19:18:37 +0000 (15:18 -0400)]
[llvm] Fix the caching of the callee for mono_threads_state_poll.
Marek Safar [Mon, 14 Sep 2015 15:15:19 +0000 (17:15 +0200)]
[mcs] Lift result of null operator over dotted expressions only ending with not null operator on value type. Fixes #33797
Ludovic Henry [Mon, 14 Sep 2015 09:57:45 +0000 (10:57 +0100)]
[threadpool-io-poll] Use mono_poll instead of platform specific poll/WSAPoll
Marcos Henrich [Fri, 11 Sep 2015 09:25:51 +0000 (10:25 +0100)]
[System] Fix TCP socket reuse.
TCP sockets with option SocketOptionName.ReuseAddress were not working on Linux.
Fixes #31557.
Marcos Henrich [Thu, 10 Sep 2015 16:25:51 +0000 (17:25 +0100)]
[System] Test Socket TCP double bind.
Test checks that when setting TCP socket option ReuseAddress, it is
possible to bind other sockets to the same endpoint.
Covers #31557.
Ludovic Henry [Mon, 14 Sep 2015 09:23:38 +0000 (10:23 +0100)]
[delegate] Fix Equals on Delegate to virtual method
The comparison was failing because we were still using the method field (instead of the Method property), which would then return, in the case of a delegate to a virtual function, the method on the base class, instead of the method on the derived class. Updated the test cases to check that too.
Rolf Bjarne Kvinge [Fri, 11 Sep 2015 16:09:29 +0000 (18:09 +0200)]
Add a monotouch_tv profile.
Rolf Bjarne Kvinge [Mon, 14 Sep 2015 08:36:46 +0000 (10:36 +0200)]
Merge pull request #2046 from rolfbjarne/profile-simplification
Profile simplification
Zoltan Varga [Mon, 14 Sep 2015 03:06:46 +0000 (23:06 -0400)]
Fix the build.
Zoltan Varga [Mon, 14 Sep 2015 01:30:50 +0000 (21:30 -0400)]
[amd64] Clean up the handling of returning vtypes by a hidden argument, add beginnings of gsharedvt support.
João Matos [Sun, 13 Sep 2015 23:37:24 +0000 (00:37 +0100)]
[genproj] Added missing git ignored Mono.Cecil.Mdb MSBuild project.
João Matos [Sun, 13 Sep 2015 23:16:41 +0000 (00:16 +0100)]
[build] Generated up-to-date net_4_x MSBuild projects.
João Matos [Sun, 13 Sep 2015 23:14:41 +0000 (00:14 +0100)]
[genproj] Skip Facades, mcs and Microsoft.Web.Infrastructure.
João Matos [Sun, 13 Sep 2015 23:01:41 +0000 (00:01 +0100)]
[genproj] Do not overwrite class library inputs with Facades.
Unfortunately the projects in the Facades share the same names as our main class library assembly names which causes us to overwrite their inputs here.
João Matos [Sun, 13 Sep 2015 23:00:15 +0000 (00:00 +0100)]
[genproj] Update the generator to handle the net_4_x profile.
João Matos [Sun, 13 Sep 2015 22:58:39 +0000 (23:58 +0100)]
[genproj] Do not define DEBUG in debug mode since it breaks reference sources.
João Matos [Sun, 13 Sep 2015 22:57:24 +0000 (23:57 +0100)]
[mcs] Reference System, System.Core and System.Xml when building.
This fixes compile errors in the generated csproj for mcs.
João Matos [Sun, 13 Sep 2015 22:56:34 +0000 (23:56 +0100)]
[mcs] Write mcs library references when generating csproj order data.
Zoltan Varga [Sat, 12 Sep 2015 00:38:53 +0000 (20:38 -0400)]
Merge pull request #2014 from BillSeurer/master
[ppc] Changes for power for ELF ABI v2 structure parameters
Alexander Köplinger [Fri, 11 Sep 2015 20:48:13 +0000 (22:48 +0200)]
[System] Bump timeout in ServicePointTest.DnsRefreshTimeout test again
The refresh timeout starts running before the actual DNS request is sent, which means on systems with a
slow DNS server the cached value has already timed out when the response is received, making the test fail.
Bumping the timeout to 2s should fix the test on Jenkins.
Zoltan Varga [Fri, 11 Sep 2015 20:06:46 +0000 (16:06 -0400)]
Revert "[aot] Update the llvm frame decoding code for llvm
b757db3a001fcdcab038411708c0f77c6211cba6."
This reverts commit
c5e03971aeb5179f4b1e9ccefcde98d5bff79902.
Revert this as the corresponding llvm commit was reverted.
Zoltan Varga [Fri, 11 Sep 2015 19:46:00 +0000 (15:46 -0400)]
[aot] Update the llvm frame decoding code for llvm
b757db3a001fcdcab038411708c0f77c6211cba6.
Rolf Bjarne Kvinge [Fri, 11 Sep 2015 16:06:14 +0000 (18:06 +0200)]
Remove profile-specific logic from makefiles.
Instead use variables defined in each profile's profile-specific makefile.
Rolf Bjarne Kvinge [Fri, 11 Sep 2015 15:55:55 +0000 (17:55 +0200)]
[System.Xaml] Make build logic more logical.
FRAMEWORK_VERSION_MAJOR is 2 for the mobile profiles, so filtering
on the profile name will do nothing at all.
This means listing the mobile profiles here is completely redundant,
so simplify to just building when FRAMEWORK_VERSION_MAJOR=4.
Rolf Bjarne Kvinge [Fri, 11 Sep 2015 15:06:57 +0000 (17:06 +0200)]
Add a dummy implementation for MONO_CONTEXT_GET_CURRENT for the Apple TV.
Alex Rønne Petersen [Fri, 11 Sep 2015 14:49:24 +0000 (16:49 +0200)]
Merge pull request #2040 from esdrubal/monoman
Added missing MONO_DEBUG options.
Alex Rønne Petersen [Fri, 11 Sep 2015 14:48:51 +0000 (16:48 +0200)]
Merge pull request #2042 from evincarofautumn/remove-dead-code
Remove dead weak link API.
Rolf Bjarne Kvinge [Fri, 11 Sep 2015 13:12:16 +0000 (15:12 +0200)]
There's no IOKit on the Apple TV.
Rodrigo Kumpera [Thu, 10 Sep 2015 21:36:50 +0000 (17:36 -0400)]
[threading] Allow mono_thread_info_current_unchecked to be called before the tls key it uses is initialized.
Rodrigo Kumpera [Thu, 10 Sep 2015 19:08:09 +0000 (15:08 -0400)]
Fix the build.
Rodrigo Kumpera [Thu, 10 Sep 2015 18:48:14 +0000 (14:48 -0400)]
[suspend] Wrap mmap and unmmap around critical sections to better handle library interposing. Fixes #19379
Instruments uses library interposing to record calls to mmap and munmap. It does take lock within the interposers
which means the async suspend could suspend a thread holding such lock while sgen tries to mmap more memory in,
causing a deadlock.
The workaround is to protect our uses of mmap and munmap in the hopes that they are enough to reduce the likelihood
of those hangs happening.
Zoltan Varga [Thu, 10 Sep 2015 17:51:57 +0000 (13:51 -0400)]
[aot] Remove some arm special cases which are no longer needed.
Bill Seurer [Mon, 31 Aug 2015 21:07:02 +0000 (16:07 -0500)]
[ppc] Fix passing of structure parameters as per the ELF ABI v2. Add 5 new test cases to test the new ABI changes.
Ludovic Henry [Thu, 10 Sep 2015 16:44:20 +0000 (17:44 +0100)]
[threadpool-io-poll] Assert we have sockets to callback on
Ludovic Henry [Thu, 10 Sep 2015 16:43:23 +0000 (17:43 +0100)]
[threadpool-io] Log if an error occured on a socket
Ludovic Henry [Thu, 10 Sep 2015 10:32:01 +0000 (11:32 +0100)]
[Socket] Duplicate logic of AsyncResult.ExecuteWorkItem to SocketAsyncResult
This consists in executing the callback synchronously and swallowing any exception in this callback.
triton [Wed, 9 Sep 2015 21:30:38 +0000 (22:30 +0100)]
[eglib] Fixed vasprintf function detection.
Fixes the Cygwin build, see https://github.com/mono/mono/pull/1966.
Ludovic Henry [Wed, 9 Sep 2015 17:00:05 +0000 (18:00 +0100)]
[delegate] Bump BCL version for field added on Delegate
Ludovic Henry [Wed, 9 Sep 2015 15:10:19 +0000 (16:10 +0100)]
[delegate] Fix bug #33218 "Action ReflectedType differs from Delegate ReflectedType"
Ludovic Henry [Tue, 8 Sep 2015 08:59:39 +0000 (09:59 +0100)]
[io-layer] Fix segfault on handle dump
Marcos Henrich [Wed, 9 Sep 2015 12:50:07 +0000 (13:50 +0100)]
Merge pull request #2041 from esdrubal/uritestfix
Fixes DotNetRelativeOrAbsoluteTest.
Rolf Bjarne Kvinge [Wed, 9 Sep 2015 09:41:50 +0000 (11:41 +0200)]
[mono-api-html] Adding members to an interface is a breaking change, so show it in red.
Rolf Bjarne Kvinge [Wed, 9 Sep 2015 08:32:43 +0000 (10:32 +0200)]
[mono-api-info] Sort constructors using full signature.
So that info files can be compared textually to test for api equality.
Alexander Köplinger [Wed, 9 Sep 2015 01:30:11 +0000 (03:30 +0200)]
[System] Make ServicePointTest.DnsRefreshTimeout test more reliable
The previous 2ms timeout was way too short and the test failed frequently.
Also switch to Assert.AreSame/AreNotSame instead of AreEqual/AreNotEqual since
we want to ensure the same object is returned and not just an equal one.
Jon Purdy [Tue, 8 Sep 2015 22:51:27 +0000 (15:51 -0700)]
Remove dead weak link API.
Alex Rønne Petersen [Tue, 8 Sep 2015 21:26:43 +0000 (23:26 +0200)]
Merge pull request #2028 from alexrp/master
[runtime] Don't allocate domain-level static slots for special static fields.
Mark Probst [Tue, 8 Sep 2015 20:24:14 +0000 (13:24 -0700)]
Merge pull request #1457 from evincarofautumn/weak-refs
Refactor weak-reference handling code in SGen
Mark Probst [Tue, 8 Sep 2015 20:03:01 +0000 (13:03 -0700)]
Merge pull request #2013 from BrzVlad/feature-concurrent-work
[sgen] Run the concurrent mark concurrent with nursery collections
Marcos Henrich [Tue, 8 Sep 2015 15:56:45 +0000 (16:56 +0100)]
Fixes DotNetRelativeOrAbsoluteTest.
Test was not changing Uri.useDotNetRelativeOrAbsolute back to its
previous value.
Miguel de Icaza [Tue, 8 Sep 2015 14:34:39 +0000 (10:34 -0400)]
[corlib] MulticastDelegate, bring back the HasSingleTarget internal method for public use
Miguel de Icaza [Tue, 8 Sep 2015 14:34:18 +0000 (10:34 -0400)]
Disable warnings about globally disabled warnings, show by ReferenceSource code
Rolf Bjarne Kvinge [Tue, 8 Sep 2015 11:12:38 +0000 (13:12 +0200)]
[mono-api-html] Fix printing of Obsolete attributes.
Rolf Bjarne Kvinge [Tue, 8 Sep 2015 11:53:47 +0000 (13:53 +0200)]
[mono-api-info] Sort nested types.
So that info files can be compared textually to test for api equality.
Rolf Bjarne Kvinge [Tue, 8 Sep 2015 09:58:40 +0000 (11:58 +0200)]
[mono-api-info] Minor perf improvements.
Rolf Bjarne Kvinge [Tue, 8 Sep 2015 09:51:59 +0000 (11:51 +0200)]
[mono-api-info] Sort methods using full signature.
So that info files can be compared textually to test for api equality.
Marcos Henrich [Tue, 8 Sep 2015 10:00:44 +0000 (11:00 +0100)]
Marcos Henrich [Mon, 7 Sep 2015 13:59:23 +0000 (14:59 +0100)]
Sorted MONO_DEBUG options alphabetically.
Marek Safar [Tue, 8 Sep 2015 09:48:01 +0000 (11:48 +0200)]
Merge pull request #2039 from simonhartmann/dns_refresh_timeout
[class libs] Implemented DnsRefreshTimeout for ServicePointManager
Simon Hartmann [Mon, 7 Sep 2015 14:54:20 +0000 (16:54 +0200)]
implemented DnsRefreshTimeout to ServicePointManager and adjusted behavior of ServicePoint.HostEntry property.
simplified some calls as requested
Marek Safar [Tue, 8 Sep 2015 08:54:29 +0000 (10:54 +0200)]
[mcs] Null operator on value type extension argument. Fixes #33754
Marek Safar [Tue, 8 Sep 2015 08:36:58 +0000 (10:36 +0200)]
Merge pull request #2032 from directhex/parallel_automake_is_hard
Parallel automake is hard
Marek Safar [Tue, 8 Sep 2015 06:07:46 +0000 (08:07 +0200)]
Marek Safar [Mon, 7 Sep 2015 18:28:32 +0000 (20:28 +0200)]
[mcs] Lift result of binary operation on enum types in more cases. Fixes #33723
Marek Safar [Mon, 7 Sep 2015 18:28:19 +0000 (20:28 +0200)]
[mcs] Fixes a typo
João Matos [Mon, 7 Sep 2015 15:03:38 +0000 (16:03 +0100)]
[runtime] Another fix for fast TLS target checking to work with cross-compilation.
Marek Safar [Mon, 7 Sep 2015 14:08:58 +0000 (16:08 +0200)]
[mcs] Consider whole hierarchy of inherited type arguments inflated via base type. Fixes #33669
Rolf Bjarne Kvinge [Mon, 7 Sep 2015 10:56:18 +0000 (12:56 +0200)]
[mono-api-info] Order interfaces.
So that info files can be compared textually to test for api equality.
Jo Shields [Fri, 4 Sep 2015 10:57:19 +0000 (11:57 +0100)]
[Facades] Fix default profile parallelization
PROFILE_SUBDIRS is built serially, then PROFILE_PARALLEL_SUBDIRS in parallel. Since we want the latter for everything, only define the latter.
Jo Shields [Fri, 4 Sep 2015 10:55:28 +0000 (11:55 +0100)]
[Facades] Fix profile name error causing non-building
The parallel build infrastructure we're trying to leverage for Facades depends on the profile name when populating the parallel lists - the default profile is now named "net_4_x", so variables with "net_4_5" in them are not considered - causing the whole Facades/ directory to be skipped
Marek Safar [Mon, 7 Sep 2015 07:41:15 +0000 (09:41 +0200)]
[corlib] Make test reproducible
Marcos Henrich [Sat, 5 Sep 2015 10:35:35 +0000 (11:35 +0100)]
Merge pull request #2031 from esdrubal/uriworkaround
[System] UriKind.RelativeOrAbsolute workaround.
Zoltan Varga [Sat, 5 Sep 2015 02:04:32 +0000 (22:04 -0400)]
Fix a warning.
Zoltan Varga [Sat, 5 Sep 2015 01:57:39 +0000 (21:57 -0400)]
Merge pull request #2033 from tritao/zip-empty
[System.IO.Compression] Fixed handling of empty Zip archives in Update mode
Miguel de Icaza [Sat, 5 Sep 2015 01:41:48 +0000 (21:41 -0400)]
Merge pull request #2035 from joelmartinez/mdoc-memberremoval-fix2
[mdoc] Follow up fix for member and type removal.
Joel Martinez [Fri, 4 Sep 2015 21:27:10 +0000 (17:27 -0400)]
[mdoc] Follow up fix for member and type removal.
In supplement of the changes submitted in
09b97cba2e7c2d9c68830d55ff3d99c5f36eb439, there were
some additional edge cases that were not originally considered, and so this patch resolves these
additional issues. In particular, there was a bug in the `RemoveApiStyle` method that wasn't
checking the value of the `apistyle` attribute before removing it. This caused members to be
stripped of apistyle inadvertently.
There was an issue in the type removal code that caused
too many files to be removed. This patch adds additional checks to make sure that a file isn't
going to be removed if it contains members in the other style that shoulnd't be removed
Finally, there was an issue that arose after the aforementioned changes in the `OrderTypeAttributes`
method. It was somewhat counterintuitive, but it wasn't allowing the reordering of attributes
with the `.Remove` method (throwing an exception). Not entirely sure why this was happening,
but using the `.RemoveNamedItem` method worked around the issue.
Zoltan Varga [Fri, 4 Sep 2015 23:22:07 +0000 (19:22 -0400)]
[aot] Avoid an assert in mono_aot_jit_info_table_find () when the address is right after the end of the method. Fixes #32955.