Граф коммитов

1405 Коммитов

Автор SHA1 Сообщение Дата
Sebastien Pouliot 5c321ac89d
[mtouch] Update validations around --interpreter (#5772)
This also centralize other interpreter checks and options in the same
location (making it easier to read / update).

* Warn and switch the REPL if the interpreter is enabled on simulator

Why ? It's confusing to build the same code using different options for
simulator and devices. This is what happens if you try to use features
like `dynamic` or `System.Reflection.Emit`.

So instead of an error, we warn that the interpreter is not supported
and switch to the existing REPL mode.

The JIT remains the only option for the simulator but it allows testing
features without a device.

* Fail early if the interpreter is used on 32bits [1]

The current interpreter only works on 64 bits (so ARM64). However the
error won't be reported, back to the developer, until deployment time.

This temporary [1] fix spot the condition very early and report an error

```
error MT0099 : Internal error : The interpreter is currently only available for 64 bits.
```

instead of the current one at deploy time

```
IncorrectArchitecture: Failed to find matching arch for 32-bit Mach-O input file /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.tNKDlx/extracted/X.app/X
error MT1006: Could not install the application 'X.app' on the device 'Mercure': AMDeviceSecureInstallApplicationBundle returned: 0xe8000087 (kAMDIncorrectArchitectureError).

Application could not be uploaded to the device.
```

[1] https://github.com/mono/mono/issues/9871

* [tests] Fix/renumbered MT0138

The test was using simulator + interpreter which is not _really_
possible, we use REPL in that case - so we're now checking if
assemblies were specified with `--interpreter` to cover both cases.

Also 0138 was already used by `mmp` and the warning was **not**
registered or documented in the errors documents. To avoid
confusion it has been renumbered to 0142 and documented.
2019-03-19 08:22:39 -05:00
Alexander Köplinger 66ebb76e71 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-18 19:24:52 +01:00
Rolf Bjarne Kvinge 18b13ac876
[runtime] Use mono_array_setref instead of mono_array_set. (#5782)
* [Foundation] Add an NSArray.FromNSObjects overload that can take an array of INativeObjects.

* [runtime] Use mono_array_setref instead of mono_array_set.

Otherwise the GC won't know about the assignment, and the assigned value can
be freed if it's no longer referenced anywhere else.
2019-03-18 15:00:32 +01:00
Alexander Köplinger fe92aab5bb Merge remote-tracking branch 'upstream/master' into mono-2019-02
# Conflicts:
#	external/mono
#	src/Foundation/NSUrlSessionHandler.cs
2019-03-18 14:35:46 +01:00
Alexander Köplinger c2bd7011e2 Fix processing of tools/common/StringUtils.cs in XamarinSourcesPathMangler.cs 2019-03-16 02:48:14 +01:00
Sebastien Pouliot 61372a06ba
[mtouch] Disable some optimizations when the interpreter is enabled (#5770)
Some optimizations are not safe to apply when dynamically loading code
at runtime. This is not possible when ahead-of-time (AOT) compilation
is used, so those options were always enabled in the past. The
interpreter is changing the situation so those optimizations are now
disabled, when the interpreter is enabled.

The disabled optimizations are:

* 'remove-dynamic-registrar' when using the interpreter

This avoid the following exception when unknown (at build time) code
tries to register (at runtime)

```
Unhandled Exception:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> ObjCRuntime.RuntimeException: Can't register the class SubclassDemo.CustomView when the dynamic registrar has been linked away.
```

* 'inline-isdirectbinding' when using the interpreter

This avoid crashing (at runtime) when types are subclasses by the
interpreter (code unknown to `mtouch` at build time).

* 'register-protocols' when the interpreter is enabled

Dynamically loaded code can include protocols. When the optimization is
enabled then they won't be registered and won't work as expected.

Note: It is possible to re-enable the optimization(s), either one or all,
if the interpreter is not used to dynamically load code at runtime.
2019-03-15 09:05:53 -05:00
Sebastien Pouliot aa1aa68d07
[mtouch] Avoid MT0109 warnings when --repl (or --interpreter) is used (#5771)
In both cases we use a different binaries for a few assemblies. They
 include support for SRE and a few other things that are not normally
 usable on iOS. That's totally fine and not something that can be fixed
 (unless you stop using the feature). So this PR simply ignore that
 specific case so we don't warn about things that can't be changed (and
 are not a problem)

 E.g.
 ```
 Warning MT0109: The assembly 'mscorlib.dll' was loaded from a different path than the provided path (provided path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/mscorlib.dll, actual path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.iOS/repl/mscorlib.dll). (MT0109) (XXX)
 Warning MT0109: The assembly 'System.Core.dll' was loaded from a different path than the provided path (provided path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/System.Core.dll, actual path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.iOS/repl/System.Core.dll). (MT0109) (XXX)
 Warning MT0109: The assembly 'System.dll' was loaded from a different path than the provided path (provided path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/System.dll, actual path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.iOS/repl/System.dll). (MT0109) (XXX)
 Warning MT0109: The assembly 'System.Xml.dll' was loaded from a different path than the provided path (provided path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/System.Xml.dll, actual path: /Users/poupou/git/intr/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/lib/mono/Xamarin.iOS/repl/System.Xml.dll). (MT0109) (XXX)
 ```
2019-03-15 09:02:08 -05:00
Alexander Köplinger ed3acacd10 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-15 14:30:26 +01:00
Sebastien Pouliot d90d96ab2b
[mtouch] Consider deployment and simulator availability versions for frameworks. Fixes #5753 (#5765)
E.g. `MetalPerformanceShaders` is unusable in 10.3.1 on the simulator so
trying to build with the static registrar cause simlauncher to be rebuilt
with a **strong** (and not _weak_) reference to the framework. This cause
a crash then the application start

```
Dyld Error Message:
  Library not loaded: /System/Library/Frameworks/MetalPerformanceShaders.framework/MetalPerformanceShaders
  Referenced from: /Users/USER/Library/Developer/CoreSimulator/Devices/95679F95-CCE7-4733-8376-35E91E97039C/data/Containers/Bundle/Application/0F665B2D-ADAC-4CA0-BD04-33E968B3F268/FailerApp.app/FailerApp
  Reason: no suitable image found.  Did find:
	/System/Library/Frameworks/MetalPerformanceShaders.framework/MetalPerformanceShaders: mach-o, but not built for iOS simulator
```

ref: https://github.com/xamarin/xamarin-macios/issues/5753
2019-03-14 08:12:42 -05:00
Sebastien Pouliot ea96b2299a
[mtouch] Make the SealerSubStep a configurable optimization (#5766)
document it and adjust the optimization tests.

This allows the optimization to be:
* disabled (if ever needed) on fully AOT'ed applications
* re-enabled for the interpreter (at your own risk)
2019-03-14 08:12:17 -05:00
Alexander Köplinger 8274161551 Update mmp/mtouch projects to add new linker files and adapt to new logic 2019-03-13 00:34:52 +01:00
Manuel de la Pena 3fc1e32adb
[XHarness] Reenable the NUnit System.Data tests on mac os x. (#5749)
Fixes https://github.com/xamarin/maccore/issues/1192
Fixes https://github.com/xamarin/maccore/issues/1193
2019-03-11 18:50:18 +01:00
Manuel de la Pena 5bfbefab14
[XHarness] Reneable System.Security nunit tests on mac os x. (#5751)
Fixes  https://github.com/xamarin/maccore/issues/1197
2019-03-11 12:08:10 +01:00
Manuel de la Pena 9eb75dda71
[XHarness] Reenable the System.Core tests on mac os x. (#5743)
Fixes https://github.com/xamarin/maccore/issues/1191
2019-03-08 17:02:15 +01:00
Rolf Bjarne Kvinge 99e727c90b
Merge pull request #4904 from xamarin/mono-2018-10
Bump to mono:2018-10
2019-03-08 11:06:50 +01:00
Manuel de la Pena 112502c081
[Xharness] Reenable the SystemXml tests on mac os x. (#5735)
Fixes https://github.com/xamarin/maccore/issues/1201
Fixes https://github.com/xamarin/maccore/issues/1202
2019-03-07 17:19:47 +01:00
Manuel de la Pena bc3b5a2d43
[Tests] Fix the tests.sln to include the new test projects. (#5720)
Update the sun and ensure that the GUID of the projects are always the same to make the .sln file happy.
2019-03-07 13:14:53 +01:00
Manuel de la Pena cad438dcfa
[XHarness] Reenable the System.Configuration tests on mac os x. (#5702)
Reenable the tests and add support to ignoring certain tests depending
on the version of the mac os x that is under test. The
System.Configuration tests make no sense in Modern.

Fixes https://github.com/xamarin/maccore/issues/1189
Fixes https://github.com/xamarin/maccore/issues/1190
2019-03-07 13:09:56 +01:00
Sebastien Pouliot 2eb178c7cd
[apidiff] Remove the `_*` noise in XM diffs (#5721)
Fix comparison so the XM profiles do not report _inexistent_ changes for `_Attribute`, `_EventInfo` and `_Exception`. That noise makes it harder to review the diffs (for us) and is incorrect in our published API diffs (for release notes).

Also
* Delete .unzip.stamp on clean
* Skip classic XM diff (binaries won't change)
2019-03-06 11:02:50 -05:00
Manuel de la Pena e3153dcfbe
[Xharness] Reenable MonoPoxis tests on mac os x. (#5711)
Fixes https://github.com/xamarin/maccore/issues/1190
Fixes https://github.com/xamarin/maccore/issues/1188
2019-03-05 11:26:59 +01:00
Manuel de la Pena 92ebe5b64a
[XHarness] Reenable SystemServiceModelTests on mac os x. (#5710)
Fixes  https://github.com/xamarin/maccore/issues/1198
2019-03-04 18:17:56 +01:00
Manuel de la Pena 568d19944d
[XHarness] Reneable SystemIdentityModelTests on mac os x. (#5708)
Fixes  https://github.com/xamarin/maccore/issues/1194
2019-03-04 17:42:07 +01:00
Manuel de la Pena 10912633e3
[Xharness] Reenable the xunit based System.Data tests on mac os x. (#5709)
Fixes https://github.com/xamarin/maccore/issues/1208
2019-03-04 17:41:37 +01:00
Manuel de la Pena 98d9fc2cf3
[XHarness] Reenable MonoCSharpTests on mac os x. (#5696)
Fixes https://github.com/xamarin/maccore/issues/1186
2019-03-04 10:56:22 +01:00
Sebastien Pouliot 78859b97b8
[apidiff] Fix location for XI (when comparing), otherwise we get the full (not PR) diff (#5700) 2019-03-03 12:46:47 -05:00
Manuel de la Pena 365fd66609
[Xharness] Reenable System.Data.Sqlite tests on mac os x. (#5697)
Tests are reenabled and a small typo fixed.

Fixes https://github.com/xamarin/maccore/issues/1187
2019-03-01 17:52:55 +01:00
Manuel de la Pena 1b1792cb43
[XHarness] Reenable the System.IO.Compression and (#5694)
System.IO.Compression.FileSystem tests on mac os x.

Reenable the tests that can be ran without failures.

Fixes https://github.com/xamarin/maccore/issues/1195
Fixes https://github.com/xamarin/maccore/issues/1146
2019-03-01 17:02:42 +01:00
Manuel de la Pena de82764456
[XHarness] Reneable the System.Transaction tests on Mac OS X. (#5686)
Reenable the tests and ensure that the failing ones on Modern are
ignored. The bcl tests on mac os x can now make a diff between the
version (Moder/Full) to ignore files so that tests that work in a
version are not ignored in the other one.

Fixes https://github.com/xamarin/maccore/issues/1200
2019-03-01 10:29:21 +01:00
Rolf Bjarne Kvinge 221f3e4a37 Merge remote-tracking branch 'origin/master' into mono-2018-10 2019-03-01 09:35:53 +01:00
Rolf Bjarne Kvinge 590524243c
Improve MachO support to read LC_BUILD_VERSION and static libraries. (#5685)
* MachO.cs: Support reading LC_BUILD_VERSION

Newer SDKs set this instead of LC_VERSION_MIN_*

* MachO.cs: Add support for reading Mach-O files inside ar archives.

* [tests] Augment ProductTests.MinOSVersion to test static libraries as well.

* Adjust enum field names to match our naming scheme.
2019-03-01 08:00:53 +01:00
Sebastien Pouliot 507d37eef6
[apidiff] Fix the comparison with the previous commit (#5690)
The removal of the XML files broke the comparison with the previous
commit. It did NOT fail the original PR because the targets were
in the previous commit.

And it will fail this PR because the previous commit still does not
have the targets - but it _should_ be fine, once merged, for all
future PR.

Fixes https://github.com/xamarin/maccore/issues/1452
2019-02-28 20:49:10 -05:00
Alexander Köplinger 97b5aef47e Merge branch 'master' into mono-2018-10 2019-02-28 21:18:49 +01:00
Manuel de la Pena c2967c0d50
[XHarness] Ensure we do a nuget restore on bcl imported tests. Fixes #5383 (#5574)
* [XHarness] Ensure we do a nuget restore on bcl imported tests. Fixes #5383

We need to ensure that a nuget restore is done, otherwise we might have
build issues with missing libs.

Fixes https://github.com/xamarin/xamarin-macios/issues/5383
2019-02-28 18:27:01 +01:00
Alexander Köplinger bbbf15a72b Merge branch 'master' into mono-2018-10
# Conflicts:
#	tests/bcl-test/System.Core/System.Core.csproj.template
#	tests/bcl-test/System.Net.Http/System.Net.Http-mac.csproj.template
#	tests/bcl-test/System.ServiceModel.Web/System.ServiceModel.Web.csproj.template
#	tests/bcl-test/System.Xml.Linq/System.Xml.Linq-mac.csproj.template
#	tests/bcl-test/System/System.csproj.template
2019-02-28 13:06:00 +01:00
Manuel de la Pena 297aebef60
[Tests] Fix the make rule that generate the test projects. Fixes #5638 (#5666)
Fixed the rule to generate the tests. This branch adds missing test dlls
that the make rule check, or it will give an error stating that tests
are missing.

This feature should be added to xharness and an issue was created for
that: https://github.com/xamarin/maccore/issues/1447

Fixes https://github.com/xamarin/xamarin-macios/issues/5638
2019-02-28 11:52:04 +01:00
Sebastien Pouliot ad3b70e9c7
[api-diff] Remove apidiff XML reference files. Fixes #4891 (#5663)
Instead download the assemblies (part of existing bundle.zip) of the
current release and generate the XML locally (no storage in github)
before doing the diff against the newer, just built, assemblies.

reference: https://github.com/xamarin/xamarin-macios/issues/4891
2019-02-27 08:59:53 -05:00
Manuel de la Pena a04048fd68
[XHarness] Fix small typo that made the Mono.Security tests of mac appear in a diff part of the DOM. (#5669) 2019-02-27 11:07:34 +01:00
Rolf Bjarne Kvinge c46a8b9611 Merge remote-tracking branch 'origin/master' into mono-2018-10 2019-02-27 07:43:02 +01:00
Rolf Bjarne Kvinge 5cb8b84e73
Simplify ARM64-based CPU detection logic. (#5661)
* We only need to do a runtime check on watchOS.
* On watchOS assume we're on a ARM64-based CPU as long as we're not on a
  ARMv7k CPU.

Fixes an issue where we failed to detect a 64-bit iOS CPU as ARM64-based (in
particular iPhone X's ARM64v8).
2019-02-27 07:31:33 +01:00
Bernhard Urban e2ec9422f2 [mtouch] use "--aot=interp,full,[...]" for every assembly if interpreter mixed mode is enabled (#5655)
The Mono AOT compiler maintains a set of signatures of compiled methods.
Those signatures are necessary to emit wrappers to enable the transition
from interpreter->AOT code. Thus, they must be collected for each
assembly.
2019-02-25 09:24:34 -05:00
Rolf Bjarne Kvinge 2a272a311d
[siminstaller] Improve failure scenarios. (#5662)
* Improve the behavior when we fail to download the .dvtdownloadableindex file
  to report a "Not Found" if we get a "Forbidden" (403) response, since that's
  what it really is.
* Improve the behavior when we fail to download the .dvtdownloadableindex file
  to check if the requested simulators are already installed instead of always
  failing. This makes it possible to manually install the required simulators
  if needed (Apple might not have published simulators for the Xcode version
  we're using), and this would allow any checks to pass if the required
  simulators are already installed.
* Improve the code to modify the PackageInfo XML to not use simple string
  replacement (it's too fragile), use proper XML parsing instead.
* Fix "time left" math, I have no idea what my previous math was doing.
2019-02-25 07:33:37 +01:00
Alexander Köplinger 1e9de96789 Merge branch 'master' into mono-2018-10 2019-02-24 10:20:44 +01:00
Rolf Bjarne Kvinge 1a3a3fbade
Add tool to download and install simulators, and use it to provision the iOS 10.3 simulator if needed. Fixes maccore#1442. (#5645)
* [siminstaller] Added tool to install simulators from the command line.

* Auto-provision the iOS 10.3 simulator.
2019-02-22 10:39:16 +01:00
Rolf Bjarne Kvinge 4a69a8c238
[mtouch] Compile .bc files into .o files before passing them to the clang. (#5651)
Clang will automatically compile .bc files into object code if needed, but
it's done serially. If we do the compilation ourselves, it'll be parallelized.

This makes the dontlink tests build in half the time when building for watchOS
/ Release (it drops from ~15 minutes to ~7 minutes).
2019-02-22 09:57:20 +01:00
Alexander Köplinger 4a03840d4d Merge branch 'master' into mono-2018-10
# Conflicts:
#	external/mono
#	tests/xharness/WatchOSTarget.cs
#	tools/mtouch/Target.cs
2019-02-21 19:30:39 +01:00
Alexander Köplinger a8a1aa60cf Fix issue with dylibs included in appex
See https://github.com/mono/mono/issues/13107
2019-02-21 19:22:53 +01:00
Rolf Bjarne Kvinge d19620c35f
[mtouch] Pass outfile= to the AOT compiler when compiling to full llvm as well. (#5647)
The AOT compiler uses the 'outfile' as the base for a temporary .bc file. If
it's not set, the path to the assembly is used as the base instead. This does
not work if we compile the same assembly to multiple architectures (for
instance armv7k+arm64_32), because the temporary file will clash between those
AOT compilations.

This is not a problem for iOS (armv7+armv7s) because we don't compile to
bitcode (.bc files) on iOS.
2019-02-21 16:38:30 +01:00
Rolf Bjarne Kvinge 81038fc319
[mtouch] Hide linker warning about mismatched watchOS versions. (#5646) 2019-02-21 15:44:17 +01:00
Rolf Bjarne Kvinge 2ff07b6f3a
[mtouch] Don't use the native linker to create fat executables. (#5629)
* [mtouch] Don't use the native linker to create fat executables.

Don't use the native linker to create fat executables, instead link each
architecture separately, and then manually lipo everything together at the
end. This requires a few changes since we need to keep track of the linker
flags per architecture.

The problem is that bitcode files (.bc) do not correspond with a particular
architecture, so the linker can't distinguish between .bc files for armv7k and
.bc files for arm64_32. So if we pass all together to the linker, the linker
will add all .bc files to both architectures, thus duplicating everything (and
the linking fails with duplicate symbols errors).

* [mtouch] Fix building symlinked simulator executables.

* [mtouch] Fix several assumptions about each Target only producing a single executable.
2019-02-21 14:39:02 +01:00
Sebastien Pouliot 4028977b66
[linker] Fix sealer to handle method overrides (#5643)
The current code did not consider that overrides could be swept later,
if unused/unmarked by the linker, so we were missing opportunities to
make methods as final.
2019-02-21 08:24:53 -05:00
Rolf Bjarne Kvinge 5f33d73077
[mtouch] Automatically install when building the csproj. (#5637)
I keep forgetting to run 'make mtouch' after changing mtouch, and then
expecting a test project to pick up the changes.
2019-02-20 15:13:27 +01:00
Alexander Köplinger 777a406838 Merge branch 'master' into mono-2018-10 2019-02-20 14:29:27 +01:00
Rolf Bjarne Kvinge bfab0ee22a
[mtouch] Fix --dot:<path> to honor the path passed. (#5626)
Also change output to use the full path to files as nodes, instead of just the
filename, and instead use a label to set what's shown to just the filename.

This makes the graph correct when we have multiple files with the same name,
but different paths.
2019-02-20 06:30:08 +01:00
Rolf Bjarne Kvinge ffda8b93ba
[mtouch] Remove MT0028, since it's only applicable if iOS deployment target is < 4.2. (#5625) 2019-02-20 06:29:52 +01:00
Alexander Köplinger 75ea3ca9bc Merge branch 'master' into mono-2018-10
# Conflicts:
#	external/mono
#	tests/xharness/Extensions.cs
2019-02-18 18:04:06 +01:00
Rolf Bjarne Kvinge 011d91e093
[mtouch] Document --optimize=remove-unsupported-il-for-bitcode in mtouch --help. (#5609) 2019-02-14 18:36:29 +01:00
Rolf Bjarne Kvinge 2bc18499b5
[mtouch] Quote MONO_PATH if needed in debug spew. (#5607)
Makes c&p commands easier.
2019-02-14 16:33:18 +01:00
Rolf Bjarne Kvinge 5571877312 [mtouch] Use a custom symbol writer to ensure only pdb file names are written to assemblies.
We need our 32-bit and 64-bit assemblies to be identical so that we can avoid
duplicating the .dll in fat apps.

One difference used to be that the .dll contained the full path to the
corresponding .pdb ([1]), but we changed cecil to only write the filename
([2]). Unfortunately this change breaks something else, so it has to be
reverted ([3]).

This implements a different solution: we provide a custom symbol writer to
Cecil, which only writes the filename of the pdb in the .dll, not the full
path.

[1]: https://bugzilla.xamarin.com/show_bug.cgi?id=54578
[2]: https://github.com/jbevain/cecil/issues/372
[3]: https://github.com/jbevain/cecil/pull/554

(cherry picked from commit 53874c863996656eaba43a5582731b93eb6f53b7)

# Conflicts:
#	tools/mtouch/mtouch.csproj
2019-02-13 14:59:34 +01:00
Rolf Bjarne Kvinge 0f49b41513 Merge remote-tracking branch 'origin/master' into mono-2018-10 2019-02-13 13:51:37 +01:00
Rolf Bjarne Kvinge 7e67e7123d
[bcl-test-importer] Fix compiler warning about unused variable. (#5591)
Fixes this warning:

    tools/bcl-test-importer/BCLTestImporter/BCLTestProjectGenerator.cs(19,17): warning CS0414: The field 'BCLTestProjectGenerator.iOSReleasePattern' is assigned but its value is never used
2019-02-13 13:28:43 +01:00
Alexander Köplinger ea1e8b0572 MachO.cs: Support reading LC_BUILD_VERSION
Newer SDKs set this instead of LC_VERSION_MIN_*
2019-02-13 03:19:14 +01:00
Rolf Bjarne Kvinge d02c9bc8e0
Add a Runtime.IsARM64CallingConvention property. (#5569)
* Add a Runtime.IsARM64CallingConvention property.

Determining whether we should use the ARM64 calling convention in P/Invokes
gets more complicated with ARM64_32 (which for our purposes is a 32-bit
architecture).

So add a property on the Runtime class to avoid code duplication, and teach
the linker to optimize any calls to this property to a constant value whenever
possible (and the method is marked as optimizable).

Also change our code to use this new property, and make the corresponding
methods optimizable.

Some shuffling in mmp was required, which meant a little bit more code is now
shared between mtouch and mmp.

* Coding style.

* Test tweaks.

* Improve comment.

* Document new optimization

* Move ILReader to shared linker test code location.

* Disable inlining on armv7k.

* Change IsARM64CallingConvention to a read-only field.

We can give the AOT compiler a constant value for a read-only field, so that
the AOT compiler optimizes away the call to the field by using the constant
value.

This commit does not implement this change for the AOT compiler, but using a
read-only field makes it easy to implement it in the future.
2019-02-11 17:29:13 +01:00
Rolf Bjarne Kvinge 1141e01a63 [mtouch] Remove unnecessary exception handling. 2019-02-11 13:49:38 +01:00
Rolf Bjarne Kvinge c54fc2431f [mtouch] Show error in case of unexpected behavior. 2019-02-11 13:49:38 +01:00
Rolf Bjarne Kvinge 019fcb6a83 [mmp/mtouch] Share some code. 2019-02-11 13:49:38 +01:00
Rolf Bjarne Kvinge 930d66ff63 [mtouch/mmp] Use 99 as the error code for internal errors. 2019-02-11 13:49:38 +01:00
Rolf Bjarne Kvinge 5385f44021 [xharness] Some style/debug fixes. 2019-02-11 13:49:38 +01:00
Alexander Köplinger 213f23b829 Merge branch 'master' into mono-2018-10
# Conflicts:
#	tests/mtouch/mtouch.csproj
2019-02-07 23:12:42 +01:00
Rolf Bjarne Kvinge db44b386ae [MachO]: Implement reading min OS load commands. 2019-02-07 15:58:34 +01:00
Rolf Bjarne Kvinge a28fad5df3
Merge pull request #5556 from rolfbjarne/issue-5553
[build] Make sure -mmacosx-version-min is passed to the mono build. Fixes #5553.
2019-02-07 13:04:45 +01:00
Rolf Bjarne Kvinge b32ac08c6d
[mtouch] Simplify & unify lipo code. (#5558) 2019-02-07 13:04:19 +01:00
Rolf Bjarne Kvinge 135507957f
[linker] Remove non-bitcode compatible code, and show a warning. (#5551)
* [linker] Remove non-bitcode compatible code, and show a warning.

Remove code not currently compatible with bitcode and replace it with an
exception instead (otherwise we'll assert at runtime).

Also show a warning when we detect this.

This is quite helpful when looking at watch device test runs to filter out
failures we already know about.

This fixes point #2 in #4763.

* Improve documentation.

* Simplify linker code by using a substep.

* Fix whitespace issues.

* Improve reporting.

* Add support for reporting more than one MT2105 at the same time when making
  the errors instead of warnings.
* Only report MT2105 for methods that haven't been linked away.
* Format the error message nicer for properties.

* Tweak a bit for warning tests to pass.

* Use ExceptionalSubStep to provide better error information.

* Adjust where linker warnings/errors are reported from to avoid a NullReferenceException.
2019-02-07 07:57:01 +01:00
Alexander Köplinger 42c0b1e474 Merge branch 'master' into mono-2018-10
# Conflicts:
#	external/mono
2019-02-07 00:06:17 +01:00
Rolf Bjarne Kvinge 22c8ca5090
[docs] Make PreserveSmartEnumConversionsSubStep use unique error codes and improve ExceptionalSubStep error documentation. (#5555)
* Make PreserveSmartEnumConversionsSubStep use error codes that are not
  already used elsewhere: this isn't obvious at first, but all
  ExceptionalSubStep errors use a range of error numbers (10 numbers from NNN0
  to NNN9), so we need to reserve that entire range. In this case there were
  other errors using some of the numbers of the range for PreserveSmartEnumConversionsSubStep.
* Make sure there are anchor links for all the variations of each ExceptionalSubStep error.
2019-02-06 15:31:49 +01:00
Rolf Bjarne Kvinge ce72a51938 [MachO]: Implement reading min OS load commands. 2019-02-06 09:48:42 +01:00
Alexander Köplinger 8829aa0c39 Merge branch 'master' into mono-2018-10
# Conflicts:
#	tests/xharness/Harness.cs
2019-02-05 21:38:47 +01:00
Alexander Köplinger a67e2b270e Remove accidentally committed debugging helper 2019-02-05 15:08:47 +01:00
Rolf Bjarne Kvinge 6bc475e624
[xharness] Rework BCL test importation to not bail out completely if something went wrong. (#5540)
Rework BCL test importation to generate projects that won't compile instead of
giving up completely in case of generation failure.

This means that xharness can still be used for non-BCL tests even if the
generation of the BCL tests fail.
2019-02-05 12:55:46 +01:00
Alexander Köplinger 1c97aba973 Fix mono native copying when no linkcontext is available
When we're using cached linker output we can't access LinkContext.
Instead we need to cache the required values ourselves.
2019-02-05 11:37:02 +01:00
Rolf Bjarne Kvinge 736cb90ac6
[mtouch/mmp] Avoid a few clang warnings in the generated pinvoke code. (#5541) 2019-02-04 15:20:44 +01:00
Alexander Köplinger 68657484bb Merge branch 'master' into mono-2018-10 2019-02-04 15:11:58 +01:00
Rolf Bjarne Kvinge db01babe71
[tests] Set the correct environment variables when executing msbuild from the mtouch tests. (#5534)
This is usually not a problem, because these variables are already set when
running from the command-line or xharness. However, it shows up when running
tests directly from VSfM.
2019-02-04 07:59:29 +01:00
Sebastien Pouliot cf86b3e1ef
[mtouch] Use the 'repl' assemblies when the interpreter is enabled (#5535) 2019-02-01 15:55:27 -05:00
Alexander Köplinger b105a5dd6f Improve copying of libmono-native 2019-02-01 20:10:58 +01:00
Alexander Köplinger d612d3ec27 bugzilla -> github 2019-02-01 19:47:55 +01:00
Alexander Köplinger 8081626eda Improve copying of libmono-native 2019-02-01 19:40:50 +01:00
Rolf Bjarne Kvinge 510bb0b1cd
[mtouch] Add logging overloads that don't format the input. (#5525)
Sometimes we just Log a string without any format arguments. This works fine,
until the string comes from the user, and happen to contain braces, in which
case an invalid format exception is thrown.

Adding Log overloads that doesn't take format arguments (nor formats its
input) avoids this problem.
2019-02-01 07:43:15 +01:00
Alexander Köplinger e25499395d Link with GSS framework in mmp when Mono.Native is used 2019-01-31 14:32:21 +01:00
Alexander Köplinger acc513aba5 Add System.Net.Security.Native to mmp 2019-01-31 14:32:00 +01:00
Alexander Köplinger 8b21371437 Merge branch 'master' into mono-2018-10 2019-01-30 13:43:03 +01:00
Sebastien Pouliot aebbe023e0
[apidiff] Build API diffs based on 15.9/xcode10.1 so it only shows the changes from Xcode 10.2 (#5508) 2019-01-29 10:41:58 -05:00
Rolf Bjarne Kvinge 83718c0b72
[jenkins] Try to give better information when api comparison / generator diff fails. (#5477) 2019-01-25 17:33:58 +01:00
Rolf Bjarne Kvinge be504be9ac
[mtouch] Properly deserialize cached Objective-C class symbols. Fixes #5467. (#5468)
Deserialize cached Objective-C class symbols to match how the objects looked
before serialization. This means storing the Objective-C class name in the
Symbol.ObjectiveCName field, and not the Symbol.Name field.

Fixes https://github.com/xamarin/xamarin-macios/issues/5467.
2019-01-24 15:08:50 +01:00
Manuel de la Pena a63c1c7f62
[XHarness] Fix small typo in test projet name. (#5461)
The small typo made the test projects from mac and ios/tvos/watchos be
in different nodes in the xhanress web page which is ugly. They now wil
appear in the same node.
2019-01-23 10:15:36 +01:00
Manuel de la Pena a71f421a67
[XHarness] Reneable Sytem.Security tests on iOS, TvOS and WatchOS. (#5421)
Reneable the tests and ignore those failing ones.

Fixes  https://github.com/xamarin/maccore/issues/1139
2019-01-22 23:18:45 +01:00
Bernhard Urban bec4e8604a Merge branch 'master' of github.com:xamarin/xamarin-macios into mono-2018-10 2019-01-18 14:09:29 +01:00
Manuel de la Pena 879629bc9d
[XHarness] Reenable the System tests on iOS, WatchOS and TVOs. (#5425)
All the failing tests have been ignored. There are a large number of
tests ignored on the watchOS platform beacuase atm the iOS test dll is
used.

Fixes https://github.com/xamarin/maccore/issues/1135
2019-01-17 22:58:31 +01:00
Manuel de la Pena cf1a034e96
[XHarness] Reenable the NUnit Corlib tests from the iOS Mono SDK. (#5316)
Reenable the tests on iOS/TvOS/WatchOS. Fixes xamarin/maccore#1153
2019-01-17 22:55:06 +01:00
Manuel de la Pena fea85dc569
[XHarness] Reenable SystemTransactionsTests on iOS, TvOS and WatchOs. (#5411)
Fixes https://github.com/xamarin/maccore/issues/1134
2019-01-16 19:12:20 +01:00
Manuel de la Pena 34ca0496fc
[XHarness] Reneable the SystemNetHttpTests on iOS, TvOS and WatchOS. (#5405)
Failing iOS tests are ignored WatchOS is running the iOS tests until we have the tests in the SDK
for the watch runtime.

Fixes https://github.com/xamarin/maccore/issues/1144
Fixes https://github.com/xamarin/maccore/issues/1145

Mono issue: https://github.com/mono/mono/issues/12430
2019-01-16 12:16:22 +01:00
Manuel de la Pena c455a1d7b9
[XHarness] Reneable Mono.Security tests on WatchOS. (#5412)
Fixes https://github.com/xamarin/maccore/issues/1142
2019-01-16 12:13:34 +01:00
Manuel de la Pena 293ade0a30
[XHarness] Reneable the SystemSecurity tests on iOS, TvOS and WatchOS (#5410)
Some of the test classes are abstract, and we needed to change the
generator to ignore that fact. Before the change, we would have 0 test
cases.

Failing tests are ignored.

Fixes https://github.com/xamarin/maccore/issues/1128

Mono issue https://github.com/mono/mono/issues/12446
2019-01-16 12:11:53 +01:00
Manuel de la Pena f63030d267
[XHarness] Remove System.Threading.Tasks.Dataflow_xunit-test from iOS, TvOS and WatchOS. (#5407)
As with other tests, this have been added because they were present when
we built the test assemblies locally, but they are not present in the
Mono SDK.

Fixes https://github.com/xamarin/maccore/issues/1132
2019-01-15 17:38:18 +01:00
Manuel de la Pena d7813b3275
[XHarness] Remove System.Runtime.Serialization.Formatters.Soap_test from iOS, TvOS and WatchOS (#5406)
As with other tests, this assembly was added when we built the tests in
the iOS makefile, but they are not present in the Mono SDK.

Fixes https://github.com/xamarin/maccore/issues/1140
2019-01-15 17:35:05 +01:00
Manuel de la Pena 2ba9a34198
[XHarness] Reenable SystemLinqXunit on watchOS and TvOS. (#5395) 2019-01-15 12:11:09 +01:00
Manuel de la Pena 20595ce988
[XHarness] Remove not needed bcl tests for (#5400)
Remove tests that are not provided in the Mono iOS SDK for Mono.Runtime.

Fixes https://github.com/xamarin/maccore/issues/1141
2019-01-14 18:37:57 +01:00
Manuel de la Pena e53bfac5c0
[XHarness] Reenable System.Core tests on ios/tvos/watchos (#5397)
Fixes https://github.com/xamarin/maccore/issues/1143

Mono issue: https://github.com/mono/mono/issues/12419
2019-01-14 17:16:41 +01:00
Manuel de la Pena 102339ad47
[XHarness] Reenable the System.ServiceModel tests from the bcl. (#5384)
Fixes https://github.com/xamarin/maccore/issues/1138

A new mono issue was added: https://github.com/mono/mono/issues/12417
2019-01-14 16:58:36 +01:00
Manuel de la Pena 392cd4342a
[XHarness] Reneable System.Numerics XUnit tests on TvOS and WatchOS. (#5396) 2019-01-14 16:50:17 +01:00
Alexander Köplinger 929e4623c4 Merge branch 'master' into mono-2018-10
# Conflicts:
#	external/mono
2019-01-14 15:26:56 +01:00
Alexander Köplinger 0dae3f27ad Fix building XamMac projects 2019-01-14 14:58:37 +01:00
Manuel de la Pena e880c6c156
[XHarness] Remove not longer present bcl tests. (#5382)
As of Mono SDK 25a8be91115255341dd80ce4a225415feec46f56 we do not longer
have the test dll and therefore the test project can be removed.
2019-01-14 13:24:08 +01:00
Sebastien Pouliot 974617d144
[mtouch] Provide a better (and single) error message when the interpreter is enabled in simulator builds. (#5376)
Before

```
clang : error : no such file or directory: '/Users/poupou/git/xamarin/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib/libmono-ee-interp.a'
clang : error : no such file or directory: '/Users/poupou/git/xamarin/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib/libmono-icall-table.a'
clang : error : no such file or directory: '/Users/poupou/git/xamarin/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib/libmono-ilgen.a'
error MT5209 : Native linking error : clang: error: no such file or directory: '/Users/poupou/git/xamarin/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib/libmono-ee-interp.a'
error MT5209 : Native linking error : clang: error: no such file or directory: '/Users/poupou/git/xamarin/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib/libmono-icall-table.a'
error MT5209 : Native linking error : clang: error: no such file or directory: '/Users/poupou/git/xamarin/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib/libmono-ilgen.a'
MTOUCH : error MT5202: Native linking failed. Please review the build log.
    0 Warning(s)
    7 Error(s)
```

After

```
MTOUCH : error MT0141: The interpreter is not supported in the simulator. Do not pass --interpreter when building for the simulator.
    0 Warning(s)
    1 Error(s)
```
2019-01-11 11:38:22 -05:00
Manuel de la Pena adc9ddccf3
[XHarness] Reenable the System.Data tests from the bcl. (#5379) 2019-01-11 16:56:30 +01:00
Manuel de la Pena 6a1ecaabb0
[XHarness] Reenable the System.IO.Compression.Filesystem tests and ignore those failing ones. (#5374) 2019-01-11 12:22:48 +01:00
Alexander Köplinger 1e961da1da Add System.Net.Security.Native dllmap to mmp 2019-01-10 22:14:58 +01:00
Alexander Köplinger 32db60a51f Fix dllmap for System.Security.Cryptography.Native.Apple in mmp 2019-01-10 22:14:58 +01:00
Alexander Köplinger ca90eb2e19 Merge branch 'master' into mono-2018-10
# Conflicts:
#	external/mono
2019-01-10 22:13:44 +01:00
Chris Hamons a4332c90aa
[mmp] Add support for mono 5.18 by pulling in libmono-system-native.a (#5328)
- https://github.com/xamarin/xamarin-macios/issues/5324
- Patch tweaked over multiple commits in master so applied directly instead of cherry-pick
2019-01-10 13:31:31 -06:00
Manuel de la Pena 8e32a07af0
[XHarness] Reneable the System.IO.Compression tests. (#5373) 2019-01-10 19:05:13 +01:00
Manuel de la Pena 18035518fb
[XHarness] Reenable System.Xml tests from the mono test dlls. (#5370) 2019-01-10 16:26:54 +01:00
Rolf Bjarne Kvinge 2b4a3b948b
[mtouch] Disable native code sharing if the interpreter settings differ between the main app and app extensions. Fixes #5365. (#5369)
We can't share native code between apps and app extensions if the interpreter
settings differ between them, so detect this scenario and automatically
disable native code sharing.

Fixes https://github.com/xamarin/xamarin-macios/issues/5365.
2019-01-10 15:45:33 +01:00
Rolf Bjarne Kvinge 29e6afc0f3
[compare-commits] Only validate files when validating if files have unexpectedly changed. (#5360)
Fixes this problem:

    The following files were modified, and they shouldn't have been:
        /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/src

which shouldn't be reported, since the "file" in question is a directory.

Reference: https://github.com/xamarin/xamarin-macios/pull/5355#issuecomment-452400517
2019-01-09 16:07:23 +01:00
Rolf Bjarne Kvinge 327c0a8ddf
[xibuild] Add support for /verbose, and use it accordingly. (#5224)
* [xibuild] Add support for /verbose, and use it accordingly.

Also stop using xibuild when it's not needed.

* Use the same verbosity for xibuild as we do for xbuild/msbuild.
2019-01-09 07:43:22 +01:00
Marek Safar c6653167b9 Merge remote-tracking branch 'origin/master' into mono-2018-10 2019-01-07 14:41:25 +01:00
Manuel de la Pena 40921b9924
[XHarness] Reenable Mono.Data.Tds tests on watch os. (#5317)
Ignore the failing tests and run the rest. Fixes xamarin/maccore#1152
2018-12-21 10:38:13 +01:00
Manuel de la Pena 480f786839
[XHarness] Add support for ignore files in the blc tests (#5288)
This PR adds support to the use of *.ignore files for iOS/tvOS/WatchOS. The files are very similar to those that are use in xtro. We have:

* common-{TestProjectName}.ignore: For those tests that fail in all platforms.
* tvOS-{TestProjectName}.ignore: For tvOS specific failures.
* watchOS-{TestProjectName}.ignore: For watchOS specific failures.
* iOS-{TestProjectName}.ignore: for iOS specific projects.

Two test projects that were ignored previously have been added to show that the code does as advertised:

* SystemDataXunit: xUnit test project example. Fixes https://github.com/xamarin/maccore/issues/1131
* SystemServiceModelWebTests: NUnit test project example. Fixes https://github.com/xamarin/maccore/issues/1137

The files take the name of the failing tests, although we do support ignoring by class/namespace and other combinations, that would make the *.ignore files format more complicated and it is not worth it.
2018-12-20 23:13:17 +01:00
Rolf Bjarne Kvinge d6cf195b4e
[registrar] Throw EntryPointNotFoundException when generating P/Invoke wrappers for objc_msgSend*_stret on arm64. Fixes #5183. (#5312)
objc_msgSend*_stret doesn't exist on arm64, so trying to call these functions
in our generated P/Invoke wrappers will result in a clang error:

    [...]/pinvokes.m:180:69: error: 'objc_msgSend_stret' is unavailable: not available in arm64 (TaskId:243)

So instead generate a call to throw an EntryPointNotFoundException (which is
exactly what would happen if we didn't generate the P/Invoke wrapper).

Fixes https://github.com/xamarin/xamarin-macios/issues/5183.
2018-12-20 18:38:07 +01:00
Rolf Bjarne Kvinge b331ed8290
[registrar] Remove unused parameter from function call. (#5311) 2018-12-20 17:27:45 +01:00
Rolf Bjarne Kvinge 163f9a37f9
[mtouch] Ignore linker warnings about our own libraries being built for iOS 7.0 when deployment target is iOS 6.0. Fixes #5092. (#5310)
Only the arm64 slice are built for iOS 7.0 (because that's when arm64 was
introduced), the arm7(s) slices are built for iOS 6.0, which means it's safe
to ignore this warning.

Fixes https://github.com/xamarin/xamarin-macios/issues/5092.
2018-12-20 17:27:25 +01:00
Manuel de la Pena ef78b1dbc3
[XHarness] Do not build the test assemblies for the iOS platforms. (#5270)
We now download the ios Mono sdk which means that there is no need for
us to build the test assemblies on iOS, WatchOS and tvOS BUT we need to
do so for the Mac tests.

The change includes:
  1. Use fo the downloaded test assemblies.
  2. Removal of the dependency of building them in the tests.
  3. Move back to using reflection for the project generation.
  4. Remove the cached project details added in the workaround.
2018-12-18 14:21:09 +01:00
Marek Safar aa6fefb1c9 Merge remote-tracking branch 'origin/master' into mono-2018-10 2018-12-17 15:28:08 +01:00
Chris Hamons d7c2a45ca9
Add 'NoBindingEmbedding' style binding project support (#5167)
- Existing binding projects embed the native libraries within the assembly as managed resource
- This does not scale well and has performance implications
- This PR creates a new property, NoBindingEmbedding which when true processes the building and consumption of binding projects differently.
- Existing binding projects are not affected, they will continue as is
- I've written a full XM test suite and ported a subset to iOS. Since iOS only supports checked in projects, and I didn't want to make the existing situation worse by adding more, I only wrote tests that could use the existing test projects.
    -When we complete some form of msbuild testing reform, we'll revisit these tests.
- Remove two files in MyiOSFrameworkBinding that are not used (we use copies elsewhere)
- Remove unnecessary sleep and fix broken touch command
- Output failing test log to console instead of test output
    - VSfM does not handle thousands of lines of test failure message well
- Add ability to generate binding projects with LinkWith
2018-12-12 09:55:57 -05:00
Manuel de la Pena ffae762db2
[XHarness] Add support for xunit and nunit tests on Mac OS X. (#5182)
This change adds support to execute the tests provided by mono as assemblies.This includes:

1. App generation to run the bcl tests on modern and full.
2. Needed workaround to delay the compilation of the assemblies until we have them from the SDK.
3. All failing tests are ignored.
2018-12-12 10:38:48 +01:00
Bernhard Urban 4061adc2a4 [interp] fix mixed mode in Release configuration (#5230)
* [mtouch] do not strip assemblies when interpreter is used

* [xharness] add release mixed-mode configuration

* [xharness] enable debug mixed-mode config for mscorlib

* [mtouch] add link to mono issue
2018-12-11 17:51:05 +01:00
Rolf Bjarne Kvinge 07b040087e
[MachO] Add support for ARM64e and ARM64_32. (#5253)
Also remove some duplicated code.
2018-12-11 17:50:20 +01:00
Chris Hamons c00e9af445
[mmp] Add rpath during compile and not after via install_name_tool (#5251)
- https://github.com/xamarin/xamarin-macios/issues/5243
- https://github.com/xamarin/xamarin-macios/issues/5248
- There were multiple issues where we'd run out of space and install_name_tool
would randomly fail. We can easily move these two to during initial
clang and avoid those cases.
2018-12-11 10:28:55 -05:00
Rolf Bjarne Kvinge 366d94d28a
[mmp] Show the right error code in error message. (#5245) 2018-12-10 15:14:18 +01:00
Rolf Bjarne Kvinge 1cdfc65b38 Merge remote-tracking branch 'origin/master' into mono-2018-10 2018-12-07 08:25:46 +01:00
Chris Hamons 2e72e1aee0
[mmp] Add rpath to MonoBundle folder if we copy any NativeLibraries in (#5214)
- https://github.com/xamarin/xamarin-macios/issues/4435
- A common enough breakage in our handling of native references is if you have
two native libraries with dependencies (with rpath) between them that get copied into MonoBundle
- We did not add rpath to this location so we would not resolve them
- This is a behavior change, as anything that touches library resolution in mmp, but should be safe enough
- Add 2 ignore line for common swift libraries
2018-12-06 14:16:10 -05:00
Sebastien Pouliot 7b83195937
Merge pull request #4596 from xamarin/mono-2018-08
* Bump to mono:2018-06

* Bump mono

* Updates compression to work with the public span

* Bump mono

* Fixes pointer check logic in Deflater

* Bump mono

* Fixes pointer check logic in Deflater

* Bump mono

* Bump Mono

* [runtime] always use `mono_jit_set_aot_mode` (#4491)

`mono_jit_set_aot_only` is deprecated and accidentally broke with
https://github.com/mono/mono/pull/7887

This should fix device tests with `mono-2018-06`

* Testing with Zoltan's patch

* Include libmono-system-native on Xamarin.Mac

* Bump Mono

Commit list for mono/mono:

* mono/mono@7bcda192a0 Bump llvm to release_60/fc854b8ec5873d294b80afa3e6cf6a88c5c48886. (#9786). (#9804)
* mono/mono@23e95ec7ad Apply F# portable pdb debug fix for pinvokes & bump (#9797)
* mono/mono@295f6d32af [2018-06] [MacOS] On Mac, use the copyfile API to copy files (#9696)

Diff: 7d5f4b6136...7bcda192a0

* Revert 4bacab3d5c, it doesn't fix the ios aot problems.

* Bump mono

* [tests] Adjust the MT0137 test for mcs change in behavior.

Starting with mono 5.16 mcs will now add assembly references when the assembly
is only used in attributes (this was already the case for csc in both 5.14 and
5.16, so it seems to be a compatibility change).

Adjust the MT0137 test accordingly.

* [msbuild] Fix parsing of json parser errors to handle trailing periods in the error message.

Fixes this test:

    1) Test Failure : Xamarin.iOS.Tasks.Bug60536.TestACToolTaskCatchesJsonException
         ColumnNumber
      Expected: 2
      But was:  0

* Bump mono

* [builds] Install the old llvm binaries into the LLVM36 directory and make the 32 bit builds use that.

* Bump mono

* Bump to mono:2018-08

* Initialize Dependency Injector.

* Fix typo

* Fix llvm build

* Reflect latest X509CertificateImpl changes

* Use same compile flags also for link

Linking can fail if the minimum versions are different

* Bump mono

* Bump mono

* Assembly.LoadFile accepts only absolute path

* Bump mono

* [jenkins] Don't give VSTS a fake branch. (#4667)

Something in VSTS changed, and now fake branch names don't work anymore.

So instead use real branch names (and for pull requests I've created a
'pull-request' branch we can use).

* Assembly.LoadFile accepts only absolute path

* [linker] Add new Facade (System.Threading.Tasks.Extensions).

Fixes these MTouch test failures:

    1. Xamarin.Linker.SdkTest.iOS_Unified :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    2. Xamarin.Linker.SdkTest.tvOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    3. Xamarin.Linker.SdkTest.watchOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

* [linker] Add new Facade (System.Threading.Tasks.Extensions).

Fixes these MTouch test failures:

    1. Xamarin.Linker.SdkTest.iOS_Unified :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    2. Xamarin.Linker.SdkTest.tvOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    3. Xamarin.Linker.SdkTest.watchOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

* [tests] Reference GuiUnit_Net_4_5 using a project reference.

This makes sure GuiUnit is built when the main project is built.

* [mono-sdks] Necessary changes to unify the LLVM provisioning for both iOS and Android. (#4732)

* Bump Mono

* [mtouch] add mixed-mode support (#4751)

* [mtouch] add --interp-mixed option

When enabling this option, mtouch will AOT compile `mscorlib.dll`.  At
runtime that means every method that wasn't AOT'd will be executed by
the runtime interpreter.

* [mtouch] Add support to --interpreter to list the assemblies to (not) interpret.

* [msbuild] Simplify interpreter code to use a single variable.

* Fix whitespace.

* [mtouch] Move mtouch-specific code to mtouch-specific file.

* [msbuild] An empty string is a valid value for 'Interpreter', so make it a non-required property.

* [mtouch] Add sanity check for aot-compiling interpreted assemblies.

* Bump Mono

* [linker] Updates SDKs facades list

* Bump mono

* [msbuild] Adds facades which might override default nuget version to framework list

The collision resolver task reads them from here https://github.com/dotnet/sdk/blob/master/src/Tasks/Common/ConflictResolution/FrameworkListReader.cs

* Bump mono to pick up hybrid suspend fixes

Pick up the 2018-08 backport (https://github.com/mono/mono/pull/10551)
of https://github.com/mono/mono/pull/10545

This should fix GC hangs when managed code runs on a GCD threadpool worker
thread.

* [builds] Fix target name in llvm36 provisioning

package-llvm-llvm36-32 isn't defined in external/mono/sdks/builds/llvm.mk,
but package-llvm36-llvm32 is.

* Revert "[builds] Fix target name in llvm36 provisioning"

This reverts commit b2338370cb.

* Revert "Fix llvm build"

This reverts commit f668561761.

* [mono-sdks] Necessary changes to unify the LLVM provisioning for both iOS and Android. (#4732)

* Bump mono

* Bump mono

* Revert "Use same compile flags also for link"

This reverts commit cf205396ff.

* Bump mono to pick up mono/mono@1a309a7b45

* [mmptest] System.Core doesn't depend on Mono.Posix in 2018-08

System.Core doesn't depend on Mono.Posix anymore since it's using the corefx
implementation of pipes now 0f0e31842f

* Bump mono and minimum system mono

* [security]: Make `SecCertificate` work with the latest runtime code.

* Fix the `NATIVE_APPLE_CERTIFICATE` logic; it should only be defined when
  using `XAMARIN_APPLETLS` and not on watch.

* It is no longer allowed to construct `X509Certificate` from a native pointer,
  the `X509Certificate(IntPtr)` and `X509Certificate2(IntPtr)` constructors now
  throw an exception.  Use `X509CertificateImplAppl` directly instead.

* Bump mono

* Bump VSmac min version to 7.7.0.1373

To pick up the fix for https://devdiv.visualstudio.com/DevDiv/_workitems/edit/658916/
Should fix the XM classic build failures

* Revert "Bump VSmac min version to 7.7.0.1373"

This reverts commit b2686bb152.

* Bump to a VSfM version that can build XM Classic projects.

* Bump mono system dependency

* Bump mono

Pick up mono/mono@1644a1a0 - fix for https://github.com/mono/mono/issues/10743

* Bump mono

* Bump mono

* [monotouch-test] Disable X509Certificate(byte[]) tests on watchOS (#4942)

* [monotouch-test] Disable X509Certificate(byte[]) tests on watchOS

* [tests] Add TestRuntime.AssertNotWatchOS()

* fixup WatchOS build

* Bump mono

* Bump mono

* [tests] Disable link-preserve-calendar-1 until we can upgrade it to be a Unified test.

See https://github.com/xamarin/xamarin-macios/pull/4596#issuecomment-428562076
for reference: mono's desktop API changed, the linker behavior the test is
verifying is only expected when using XM's Mobile profile.

* Bump mono

* Revert "[monotouch-test] Disable X509Certificate(byte[]) tests on watchOS (#4942)"

This reverts commit d003a9b918.

* Bump Mono.

* [security]: `NATIVE_APPLE_CERTIFICATE` should now be defined on watchOS as well.

* Mono 2018-08 requires macOS 10.9+, so Xamarin.Mac must as well.

* Bump min mono version for XM system apps.

Using a system mono < 5.18 results in a TypeLoadException:

    Could not resolve type with token 01000032 from typeref (expected class 'Mono.ISystemDependencyProvider' in assembly 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')

* Bump guiunit to get updated min macOS version.

Commit list for mono/guiunit:

* mono/guiunit@9f67042 Bump min macOS version to 10.9.
* mono/guiunit@0c3159a [Harness] Fix exit code of 0 being reported in case of exceptions in the harness
* mono/guiunit@9b7497c Merge pull request #15 from mono/fix-more-warnings
* mono/guiunit@a264470 Fix more warnings
* mono/guiunit@dd094e7 Merge pull request #14 from mono/fix-warnings
* mono/guiunit@b3afede Fix build warnings

Diff: 1306b0d420...9f67042498

* [tests] More min macOS version setting to 10.9.

* Remove 10.7 & 10.8 availability attributes, since they're redundant now.

* Bump mono

* [2018-08][watchos] Use mono_dangerous_add_raw_internal_call for watchOS icalls (#5030)

* Add optional mono_dangerous_add_raw_internal_call to exports.t4

* Use mono_dangerous_add_raw_internal_call on watchOS for icall registration

Internal calls added with mono_dangerous_add_raw_internal_call run in GC Unsafe
mode under cooperative and hybrid suspend, whereas internal calls added with
mono_add_internal_call run in GC Safe mode since
mono/mono@5756ba4b46 in order for hybrid suspend
to be a transparent replacement for preemptive suspend (the old default).  The
icalls in GC Unsafe mode have a responsibility not to block indefinitely
without manually performing a thread state transition to GC Safe mode, and in
return they avoid a thread state transition when the icall is invoked from a
managed method.

* [mmptest] Less hardcoding.

* Bump minimum mono one that has 'mono_dangerous_add_raw_internal_call'.

* Bump mono

* Bump system mono dependency

* Fixes building mono tests

* [ImageCaptureCore] Remove redundant availability attribute.

* [mtouch] Clear the MONO_THREADS_SUSPEND environment variable before calling the AOT compiler. Works around mono/mono#11765.

Visual Studio for Mac may set MONO_THREADS_SUSPEND, and this ends up confusing
the AOT compiler when compiling for watchOS.

So unset the environment variable before calling the AOT compiler.

Works around https://github.com/mono/mono/issues/11765.
2018-12-06 10:52:19 -05:00
Bernhard Urban 3ddadfb852 [mmp] fix compilation error 2018-12-05 14:13:30 +01:00
Rolf Bjarne Kvinge 1af3903f1f
[xibuild] Don't redirect standard input. (#5209)
It's not needed, and it prevents subprocesses from detecting a terminal (and
thus no colors in the output).
2018-12-03 14:52:08 +01:00
Rolf Bjarne Kvinge a8c54e00b3
[xibuild] Auto-make if not already made. (#5211)
* [xibuild] Auto-make if not already made.

Automatically make xibuild if it doesn't already exist.

Also fix the script:

* Use bash instead of sh, since it references BASH_SOURCE.
* Don't hide errors (-e).
* Fix shellcheck warnings
	* Use $(..) instead of backticks, because backticks are strongly discouraged [1].
	* Sprinkle quotes.

[1] For the curious: https://stackoverflow.com/a/4708569/183422

* Run make in the right directory.
2018-12-03 11:49:26 +01:00
Marek Safar 60d08b8559 Merge branch 'master' into mono-2018-10 2018-11-29 13:41:32 +01:00
Rolf Bjarne Kvinge 1ffd62c749
[mtouch] Try cloning directories when copying them. (#5196)
Cloning directories is *much* faster than copying, so make sure we clone when
possible.

This will still fall back to copying if it the file system doesn't support
cloning.
2018-11-29 07:47:17 +01:00
Rolf Bjarne Kvinge 4e3dec7894 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-11-27 19:10:48 +01:00
Rolf Bjarne Kvinge e8d780229b
[mmp] Set DEVELOPER_DIR to our Xcode. (#5187)
This makes it possible to build mmp (the partial static registrar code) with
the wrong system Xcode (which is not supported, but that doesn't mean we can't
try to make it mostly work to ease our lives).

I tried this in the xcode9 branch (PR #2588), and it didn't stick after the
xcode9 branch was merged to master.

I tried again a year later with the xcode10 branch (PR #4691), and once again
the commit didn't stick after the xcode10 branch was merged to master.

So now I'm trying to get this directly into master instead.

Let's see if it's still there when we branch for xcode11 next year...
2018-11-27 18:09:17 +01:00
Rolf Bjarne Kvinge 428310c181 [mtouch] Clear the MONO_THREADS_SUSPEND environment variable before calling the AOT compiler. Works around mono/mono#11765.
Visual Studio for Mac may set MONO_THREADS_SUSPEND, and this ends up confusing
the AOT compiler when compiling for watchOS.

So unset the environment variable before calling the AOT compiler.

Works around https://github.com/mono/mono/issues/11765.
2018-11-27 12:06:12 +01:00
Rolf Bjarne Kvinge 23b7847066 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-11-26 08:05:36 +01:00
Rolf Bjarne Kvinge 2e754a2f70
[xibuild] Build the expected configuration. (#5172) 2018-11-23 16:22:14 +01:00
Manuel de la Pena 61b2038b3d
[Xharness] Add a workaround to not build the xunit tests when not needed. (#5156)
* [Xharness] Add a workaround to not build the xunit tests when not needed.

This is a workaround that does not use reflection to build the bcl test
projects. We need this until we have complete support of using mono as
an SDK.
2018-11-23 16:02:15 +01:00
Rolf Bjarne Kvinge 02fe5339a4
[runtime] Clean up public symbols. Fixes #5124. (#5155)
* [runtime] Clean up public symbols. Fixes #5124.

Clean up public symbols, by:

* Symbols that don't need to be public (most of them), can be private.
* Prefix all public symbols with `xamarin_`.
* Add a test to ensure we don't introduce new public symbols.
* Use C symbols instead of mangled C++ symbols, since those are easier to
  handle in the test.

This minimizes the chance of getting into a symbol clash with another native library.

Fixes https://github.com/xamarin/xamarin-macios/issues/5124.

* Some test fixes.
2018-11-21 11:48:15 -05:00
Rolf Bjarne Kvinge 74b966e403 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-11-20 13:08:41 +01:00
Rolf Bjarne Kvinge 50bb4912e1
Revert "[xharness] Only build the BCL tests when we need them. (#5139)" (#5149)
This reverts commit 7277bbcd2b, it breaks building & running the new BCL tests.
2018-11-20 07:06:37 -05:00
Rolf Bjarne Kvinge e6035b26b4 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-11-20 08:39:53 +01:00
Rolf Bjarne Kvinge 163059c19b Build xibuild before mlaunch, since mlaunch needs xibuild to build. (#5143) 2018-11-19 14:28:16 -05:00
Marek Safar ece0324f35 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-11-19 16:57:18 +01:00
Rolf Bjarne Kvinge 7277bbcd2b
[xharness] Only build the BCL tests when we need them. (#5139)
Only build the BCL tests when we need them, because we can't build them when
we're running the device tests (because we don't have a built source tree in
that case).

Since the test assemblies are required when generating the BCL projects, this
means we also delay creating the BCL projects until we need them.
2018-11-19 09:07:35 -05:00
Rolf Bjarne Kvinge f8a254d628 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-11-16 14:26:50 -05:00
Ankit Jain f865694f86 Move tests to use new tool xibuild and thus fix msbuild tests (#5128)
* xibuild: New wrapper tool to run msbuild or managed executables

MSBuild supports fallback paths for projects imported using
`$(MSBuildExtensionsPath)`, but these must be specified explicitly in
the app.config of the main executable. There was a PR to allow use of
properties for this in the app.config, but that was not accepted
upstream.

This is required for being able to:

1. build projects with msbuild against the in-tree XI/XM build output
2. and to run nunit tests against the same.

For this we introduce a new tool, `xibuild`, based on XA's `xabuild`.
This supports the fallback paths to be specified via the environment variable
`MSBuildExtensionsPathFallbackPathsOverride`[1].
It essentially operates in 3 modes:

1. `xibuild -c /path/to/foo.exe`
	Generates /path/to/foo.exe.config with the fallback paths inserted into that.

2. `xibuild -- /v:diag /path/to/project.csproj`
	Runs msbuild with the arguments after `--` with a custom app.config based on
	`MSBuild.dll.config`, with the fallback paths correctly inserted.
	This is in a temporary file and the original config file is not touched.

3. `xibuild -t -- /path/to/managed_tool.exe args`
	Generates `/path/to/managed_tool.exe.config` based on `MSBuild.dll.config` with
	the fallback paths inserted, and runs `managed_tool.exe` with the arguments.
	The default is to overwrite the config file.
	But there is also a switch to merge it with an existing config file.

--
1. Value of the environment variable $MSBuildExtensionsPathFallbackPathsOverride
is prepended to any existing list of search paths in `MSBuild.dll.config`, IOW,
it takes precedence. So, the order of lookup becomes:

  - Value of the property `$(MSBuildExtensionsPath)`
  - Value of the environment variable `$MSBuildExtensionsPathFallbackPathsOverride`
  - /Library/Frameworks/Mono.framework/External/xbuild on macOS

* Integrate use of `xibuild` with the tests

Update all uses of `msbuild` and invocations of tools like nunit that
might depend on using the in-tree builds to use `xibuild`.

* xibuild: Move help descriptions to OptionSet itself.
2018-11-16 14:24:35 -05:00
Manuel de la Pena 505006952c
[Tests] Add a new iOS app to run the xunit and nunit tests (#4914)
Mono know provides a set of testing assemblies that contain the tests to be ran in each of the supported platforms. This commit adds the following:

1. Two different runners that can be used to execute NUnit and xUnit tests.
2. The necessary  glue to get xharness to run the new tests and report the results.
3. A new test that will ensure that if mono adds new tests, xharness will report failures if the tests are not run or not ignored.
2018-11-16 13:31:40 -05:00
Ludovic Henry 1c59076f82 Merge branch 'master' of github.com:xamarin/xamarin-macios into mono-2018-10 2018-11-14 14:20:02 -05:00
Ludovic Henry 54f2bc4569 Revert "Merge pull request #5066 from spouliot/xcode10.1-master"
This reverts commit 72a825fc7d.
2018-11-14 14:17:06 -05:00
Martin Baulig 83de08eb78 [mmp]: Fix mono-native support. 2018-11-14 13:43:45 -05:00
Martin Baulig 91169d6112 Tooling support for mono-native. 2018-11-14 13:20:48 -05:00
Sebastien Pouliot 72a825fc7d Merge pull request #5066 from spouliot/xcode10.1-master
Merge xcode10.1 into master

(cherry picked from commit f60fcbbb16)
2018-11-14 13:10:46 -05:00
Martin Baulig 6fe944731d Merge remote-tracking branch 'origin/mono-2018-08' into mono-2018-10 2018-11-14 13:03:30 -05:00
Chris Hamons e91ba9f93a
[mmp] Fix typo (#5123)
- https://github.com/xamarin/xamarin-macios/issues/5121
2018-11-13 17:56:05 -05:00
Alex Soto 8c207428a9
[ImageCaptureCore] Add ImageCaptureCore Bindings (#5074)
* [ImageCaptureCore] Add ImageCaptureCore Bindings

Fixes xamarin/xamarin-macios#4273

* [ImageCaptureCore] remove not needed `unsafe`

Co-Authored-By: dalexsoto <alex@alexsoto.me>

* Implement feedback
2018-11-07 09:52:39 -05:00
Rolf Bjarne Kvinge 012a0650b6
[mtouch] Fix formatting for MT0079 and update the MT4134 test to take into account the warning. Fixes maccore#1116. (#5089)
Fixes https://github.com/xamarin/maccore/issues/1116.
2018-11-06 15:06:10 +01:00
Rolf Bjarne Kvinge ef8f1dcbfe
[mtouch/mmp] Unify Xcode lookup & verification code in mtouch and mmp. (#5077)
Share all the code to find and verify Xcode between mtouch and mmp.

Also print out the actual product version when logging which Xcode was used
(to make it easier to detect if a beta version is in use).
2018-11-05 08:16:29 +01:00
Chris Hamons 366281e8b7
[mmp] Remove duplicate libmono-system-native.a logic (#5073)
- https://github.com/xamarin/xamarin-macios/pull/4980 and the mono branch merge both added it
- However both copies were not the same, one was conditional and one added an extra -u option
- This collapses them into one check
2018-11-02 09:07:50 -05:00
Sebastien Pouliot f2a05eddc7
Merge xcode10.1 into d15-9 (#5063) 2018-10-31 17:30:44 -04:00
Sebastien Pouliot 3ab481ea70 Merge xcode10.1 into master
Also update apidiff from d15-9 since it's both frozen and includes xcode10.1
2018-10-31 15:54:48 -04:00
Rolf Bjarne Kvinge 7425218c78 Merge remote-tracking branch 'origin/master' into mono-2018-08 2018-10-30 07:42:02 +01:00
Rolf Bjarne Kvinge c69c74b3d3
Clone files if possible whenever it makes sense. (#5049)
Cloning is faster when supported, and it also saves disk space.
2018-10-29 16:09:30 +01:00
Rolf Bjarne Kvinge aa668710f7 [iTunesLibrary] Fix typo & confusion. (#5046)
I'm not sure why we have an entry in our list of frameworks claiming that
iTunesLibrary was introduced in macOS 10.9, when we didn't have any bindings
for the library back then.

In any case we also have an entry for iTunesLibrary in our list of frameworks
claiming that iTunesLibrary was introduced in macOS 10.14.

I looked at some of Apple's documentation for the types in iTunesLibrary, and
they all claim to be introduced in macOS 10.13 [2].

And to make matters even more interesting, Apple's documentation for the
framework itself states the library is in
/Library/Frameworks/iTunesLibrary.framework, and ships with iTunes 11.0+ [1]
(which is introduced in 2012).

Then I looked at a macOS 10.14 machine, and the framework is available at
/System/Library/Frameworks/iTunesLibrary.framework, and
/Library/Frameworks/iTunesLibrary.framework is just a symlink there
(/System/Library/Frameworks/iTunesLibrary.framework does not exist on my macOS
10.13 machines, while /Library/Frameworks/iTunesLibrary.framework does). From
this I conclude that the framework was converted into a
system framework in macOS 10.14, and as such our claim that the framework was
introduced in 10.14 is at least somewhat right.

So treat iTunesLibrary as any other framework introduced in macOS 10.14, and
remove our (duplicated) framework entry for 10.9 (for which we didn't have any
bindings anyway).

Also fix the path to the framework, I'm wonder how this got past our tests in
the first place.

[1] https://developer.apple.com/documentation/ituneslibrary: "... located at /Library/Frameworks/iTunesLibrary.framework ... The iTunes Library framework is available to users running iTunes v11.0 or above."
[2] https://developer.apple.com/documentation/ituneslibrary/itlibrary?language=objc
2018-10-26 17:22:03 -04:00
Martin Baulig 673325206d Merge remote-tracking branch 'origin/mono-2018-08' into mono-2018-10 2018-10-26 02:24:28 -04:00
Rolf Bjarne Kvinge cca50fe500 Mono 2018-08 requires macOS 10.9+, so Xamarin.Mac must as well. 2018-10-25 09:54:43 +02:00
Sebastien Pouliot d2a9a57bb9
[mtouch] Display a specific error is a .framework binary is invalid. Fixes #5028 (#5031)
Instead of a generic `MT0000` caused by an exception reading the magic
numbers of the binary framework file.

This was caused be uncompressing an archive, with a symlink, into a
file system that does not support symlinks (on Windows).

ref: https://github.com/xamarin/xamarin-macios/issues/5028
2018-10-23 14:15:58 -04:00
Rolf Bjarne Kvinge c378d6baa5
Add a UserType flag for registered types, and use it to improve the performance for is_user_type. (#5017)
* Refactor type map to have a separate flag field for each type instead of magic location in the array.

Refactor the type map to have a separate flag field for each type instead of a
magic location in the array. This simplifies some code, but also allows us to
introduce more flags in the future (which becomes increasingly complex if the
location in the array is to determine yet another value).

This has neglible performance impacts.

* Add a UserType flag for registered types, and use it to improve the performance for is_user_type.

Reflection in the Objective-C runtime is apparently quite slow, so try to
avoid it by computing the information we need for determining whether a
particular Objective-C type represents a user type or not in the static
registrar.

We store this information in a flag for the type in question in the type map,
and use a binary search to search the type map when needed.

This provides a significant improvement, in particular in the dontlink
scenario (probably because there are many more Objective-C types in the app,
which made Objective-C reflection slow). In fact, it somehow made the dontlink
scenario so fast that it's faster than the linkall scenario (which also
improved, but not nearly as much). While quite inexplicable, it's a consistent
result I've seen over multiple test runs.

Numbers
=======

Test case: 004283d7b6

Fix 1 refers to PR #5009.
Fix 2 refers to PR #5013.
Fix 3 refers to PR #5016.
Fix 4 is this fix.

iPad Air 2
----------

| Configuration       | Before | After fix 1 | After fix 2  | After fix 3  | After fix 4  | Improvement from fix 3 to fix 4 | Cumulative improvement |
| ------------------- | ------ | ----------: | -----------: | -----------: | -----------: | ------------------------------: | ---------------------: |
| Release (link all)  | 477 ms |      481 ms |       224 ms |       172 ms |       148 ms |                     24 ms (14%) |           329 ms (69%) |
| Release (dont link) | 738 ms |      656 ms |       377 ms |       201 ms |       146 ms |                     55 ms (27%) |           592 ms (80%) |

iPhone X
--------

| Configuration       | Before | After fix 1 | After fix 2  | After fix 3  | After fix 4  | Improvement from fix 3 to fix 4 | Cumulative improvement |
| ------------------- | ------ | ----------: | -----------: | -----------: | -----------: | ------------------------------: | ---------------------: |
| Release (link all)  |  98 ms |       99 ms |        42 ms |        31 ms |        29 ms |                      2 ms ( 6%) |            69 ms (70%) |
| Release (dont link) | 197 ms |      153 ms |        91 ms |        43 ms |        28 ms |                     15 ms (35%) |           169 ms (86%) |

When linking all assemblies, the type map has 24 entries, and when not linking
at all it has 2993 entries.

This is part 4 (the last) of multiple fixes for #4936.

The total speed-up is 69-86% (3-7x faster).
2018-10-22 07:57:16 +02:00
Rolf Bjarne Kvinge 900356c2e6
[Class] Sort our array of Class -> token references so that we can do binary instead of linear searches in it. (#5009)
Our type map has two sections: first come all the wrapper types, then all the
custom types. This means we need to sort these two sections separately, since
code elsewhere depends on this split in order to determine if a type is a
custom type or not.

We also need a minor modification in the array of skipped types, since it
contained indexes into the type map, which won't be valid after is has been
sorted. Instead store a type reference for the actual type in the array, and
use that to search the type map for the corresponding Class. This is a little
bit slower, but the results are cached in a dictionary, so it'll only happen
once for each type.

The performance is slightly slower when the type map has very few entries, but
that is repaid many times over when the number of entries go up.

Numbers
=======

Test case: 004283d7b6

iPad Air 2
----------

| Configuration       | Before | After  | Improvement   |
| ------------------- | ------ | ------ | ------------: |
| Release (link all)  | 477 ms | 481 ms | -4 ms (-0,8%) |
| Release (dont link) | 738 ms | 656 ms |   82 ms (11%) |

iPhone X
--------

| Configuration       | Before | After  | Improvement |
| ------------------- | ------ | ------ | ----------: |
| Release (link all)  |  98 ms |  99 ms | -1 ms (-1%) |
| Release (dont link) | 197 ms | 153 ms | 44 ms (22%) |

When linking all assemblies, the type map has 24 entries, and when not linking
at all it has 2993 entries.

This is part 1 of multiple fixes for #4936.
2018-10-19 07:33:15 +02:00
Martin Baulig 3f325dd3f0 Initial "Titanium Yellow" support. 2018-10-16 19:01:32 -04:00
Martin Baulig 47a2a3de15 Add `PreserveDependencyLookupStep` to mmp and mtouch to make it build again. 2018-10-15 13:24:33 -04:00
Chris Hamons d29ede7144
[mmp] Include libmono-system-native.a when embedding mono if it exists (#4980) 2018-10-15 09:12:56 -05:00
Sebastien Pouliot 855e682719
[linker] Set flag when processing ParameterInfo.get_Name from XML files. Fixes #4978 (#4981)
Commit 996d90614b fixed the use of XML files. However it did not set the flags so if it's used in both XML and in code then the dictionary is being added twice, which throws an exception like

```
error MT2102: Error processing the method 'System.Boolean SignalGo.Shared.Helpers.ReflectionHelper/d__0::MoveNext()' in the assembly 'SignalGo.Shared.dll': An item with the same key has already been added. Key: System.String System.Reflection.ParameterInfo::get_Name()
```

reference: https://github.com/xamarin/xamarin-macios/issues/4978
2018-10-15 08:26:49 -04:00
Jo Shields 6f2ebedb74 Bump to mono:2018-06 (#4277)
* Bump to mono:2018-06

* Bump mono

* Updates compression to work with the public span

* Bump mono

* Fixes pointer check logic in Deflater

* Bump mono

* Fixes pointer check logic in Deflater

* Bump mono

* Bump Mono

* [runtime] always use `mono_jit_set_aot_mode` (#4491)

`mono_jit_set_aot_only` is deprecated and accidentally broke with
https://github.com/mono/mono/pull/7887

This should fix device tests with `mono-2018-06`

* Testing with Zoltan's patch

* Include libmono-system-native on Xamarin.Mac

* Bump Mono

Commit list for mono/mono:

* mono/mono@7bcda192a0 Bump llvm to release_60/fc854b8ec5873d294b80afa3e6cf6a88c5c48886. (#9786). (#9804)
* mono/mono@23e95ec7ad Apply F# portable pdb debug fix for pinvokes & bump (#9797)
* mono/mono@295f6d32af [2018-06] [MacOS] On Mac, use the copyfile API to copy files (#9696)

Diff: 7d5f4b6136...7bcda192a0

* Revert 4bacab3d5c, it doesn't fix the ios aot problems.

* Bump mono

* [tests] Adjust the MT0137 test for mcs change in behavior.

Starting with mono 5.16 mcs will now add assembly references when the assembly
is only used in attributes (this was already the case for csc in both 5.14 and
5.16, so it seems to be a compatibility change).

Adjust the MT0137 test accordingly.

* [msbuild] Fix parsing of json parser errors to handle trailing periods in the error message.

Fixes this test:

    1) Test Failure : Xamarin.iOS.Tasks.Bug60536.TestACToolTaskCatchesJsonException
         ColumnNumber
      Expected: 2
      But was:  0

* Bump mono

* [builds] Install the old llvm binaries into the LLVM36 directory and make the 32 bit builds use that.

* Bump mono

* Bump mono

* [jenkins] Don't give VSTS a fake branch. (#4667)

Something in VSTS changed, and now fake branch names don't work anymore.

So instead use real branch names (and for pull requests I've created a
'pull-request' branch we can use).

* Assembly.LoadFile accepts only absolute path

* [linker] Add new Facade (System.Threading.Tasks.Extensions).

Fixes these MTouch test failures:

    1. Xamarin.Linker.SdkTest.iOS_Unified :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    2. Xamarin.Linker.SdkTest.tvOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    3. Xamarin.Linker.SdkTest.watchOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

* [mono-sdks] Necessary changes to unify the LLVM provisioning for both iOS and Android. (#4732)

* Bump Mono

* [mtouch] add mixed-mode support (#4751)

* [mtouch] add --interp-mixed option

When enabling this option, mtouch will AOT compile `mscorlib.dll`.  At
runtime that means every method that wasn't AOT'd will be executed by
the runtime interpreter.

* [mtouch] Add support to --interpreter to list the assemblies to (not) interpret.

* [msbuild] Simplify interpreter code to use a single variable.

* Fix whitespace.

* [mtouch] Move mtouch-specific code to mtouch-specific file.

* [msbuild] An empty string is a valid value for 'Interpreter', so make it a non-required property.

* [mtouch] Add sanity check for aot-compiling interpreted assemblies.

* Bump Mono

* [linker] Updates SDKs facades list

* Bump mono

* [msbuild] Adds facades which might override default nuget version to framework list

The collision resolver task reads them from here https://github.com/dotnet/sdk/blob/master/src/Tasks/Common/ConflictResolution/FrameworkListReader.cs

* Bump to a VSfM version that can build XM Classic projects.
2018-10-10 11:02:28 -04:00
Rolf Bjarne Kvinge 80881930c0
[install-source] Quiet warning. (#4964)
The line "Got empty dir for " is printed 6000 times when building on the bots;
this change will quiet this warning.
2018-10-10 15:44:40 +02:00
Rolf Bjarne Kvinge 3684204f5a
Improve generator diff to ignore changes we don't care about. (#4947)
This means we'll get an empty diff if there are no generator changes, so
update the logic that detects/reports empty generator diffs.

Also there's no need to ignore mdbs anymore, since we don't create mdbs.
2018-10-09 07:35:00 +02:00
Chris Hamons c41673dce8
Add mmp error when combining partial static registrar and linking (#4932)
- https://github.com/xamarin/xamarin-macios/issues/4825
2018-10-05 09:43:53 -05:00
Rolf Bjarne Kvinge 1044fa602d [linker] Add new Facade (System.Threading.Tasks.Extensions).
Fixes these MTouch test failures:

    1. Xamarin.Linker.SdkTest.iOS_Unified :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    2. Xamarin.Linker.SdkTest.tvOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >

    3. Xamarin.Linker.SdkTest.watchOS :   Facades
      Expected:
      But was:  < "System.Threading.Tasks.Extensions" >
2018-10-05 10:38:58 +02:00
Chris Hamons 3119129ab7 Remove references to bugzilla and replace with github (#4920)
https://github.com/xamarin/xamarin-macios/issues/3647
2018-10-04 09:43:55 -04:00
Xamarin Jenkins User bc5d9a1b74 [mtouch] Fix [InternalsVisibleTo] attribute parsing. Fixes #4895 (#4921)
The input is a "user" string, i.e. not some well formatted metadata.
Spec [1] mention it's comma separated, but spaces are optional.

[1] https://docs.microsoft.com/en-us/dotnet/framework/reflection-and-codedom/specifying-fully-qualified-type-names#specifying-assembly-names

Fixes https://github.com/xamarin/xamarin-macios/issues/4895
2018-10-04 09:43:38 -04:00
Sebastien Pouliot ac776ef924
[mtouch] Fix [InternalsVisibleTo] attribute parsing. Fixes #4895 (#4917)
The input is a "user" string, i.e. not some well formatted metadata.
Spec [1] mention it's comma separated, but spaces are optional.

[1] https://docs.microsoft.com/en-us/dotnet/framework/reflection-and-codedom/specifying-fully-qualified-type-names#specifying-assembly-names

Fixes https://github.com/xamarin/xamarin-macios/issues/4895
2018-10-03 15:00:59 -04:00
Sebastien Pouliot 41c6ea48cb
Update API diff references wrt XM 5.0 (#4905) 2018-10-03 08:28:16 -04:00
Sebastien Pouliot e3a39c94bb
[apidiff] Update XM references to match XM 5.0 (#4890) 2018-09-28 14:48:16 -04:00
Rolf Bjarne Kvinge 11d9fe68db
[mtouch/mmp/docs] Improve MT0091 to include how to enable the linker. Fixes #4549. (#4852)
Fixes https://github.com/xamarin/xamarin-macios/issues/4549.
2018-09-21 16:51:23 +02:00
Sebastien Pouliot 204c233335
[apidiff] Update API diff to be based on XI 12.0 (#4844)
* XI references updated from `xcode10` (XI 12.0)
* XM references are not updated, we continue to compare with `d15.8`
* references_/* were temporary files that should not have been committed (old mistake)
2018-09-20 10:05:24 -04:00
Sebastien Pouliot f333b3aed6
[apidiff] Update API diff to be based on XI 12.0 (#4845)
* XI references updated from `xcode10` (XI 12.0)
* XM references are not updated, we continue to compare with `d15.8`
* references_/* were temporary files that should not have been committed (old mistake)
2018-09-20 09:28:31 -04:00
Sebastien Pouliot 3ad77a3bc5
[apidiff] Update API diff to be based on XI 12.0 (#4843)
* XI references updated from xcode10 (XI 12.0)
* XM references are not updated, we continue 4.99.x previews
* references_/* were temporary files that should not have been committed (old mistake)
2018-09-20 09:18:26 -04:00
Vincent Dondain 089cb63b7f [tools] Fix merge issue in Frameworks.cs 2018-09-19 12:27:43 -04:00
Vincent Dondain 2174ec41a2 Merge branch 'xcode10' 2018-09-18 14:12:39 -04:00
Rolf Bjarne Kvinge fc673dcf96
[mtouch/mmp] Always show the complete version. (#4817)
This makes failure diagnosis based on the exact XI/XM version much easier when
builds aren't verbose.

Example: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/632392
2018-09-14 19:12:59 +02:00
Vincent Dondain 91a52a17f5 Merge branch 'xcode10' into d15-9-merge-xcode10 2018-09-14 12:53:17 -04:00
Xamarin Jenkins User 43c45229d1 [mtouch] Don't pass -read_only_relocs to clang when compiling 64-bit code. Fixes #4735. (#4814)
Fixes this ld warning:

    ld : warning : -read_only_relocs cannot be used with arm64

Fixes https://github.com/xamarin/xamarin-macios/issues/4735.
2018-09-14 15:29:46 +02:00
Rolf Bjarne Kvinge 7f966cfc74
[mtouch] Don't pass -read_only_relocs to clang when compiling 64-bit code. Fixes #4735. (#4809)
Fixes this ld warning:

    ld : warning : -read_only_relocs cannot be used with arm64

Fixes https://github.com/xamarin/xamarin-macios/issues/4735.
2018-09-14 07:35:53 +02:00
Rolf Bjarne Kvinge 93c672fbf1 Disable the GC pump by default. Fixes #4772. (#4781)
Fixes https://github.com/xamarin/xamarin-macios/issues/4772
2018-09-10 16:42:42 -04:00
Sebastien Pouliot ce207d263f
Order additional arguments after response file (#4607) (#4612) (#4769)
- https://github.com/xamarin/xamarin-macios/issues/4594
- There were being adding _before_ the response file which meant options that were overriding defaults were not being honored
2018-09-07 08:52:38 -04:00
Rolf Bjarne Kvinge 72c3b33284
[registrar] Ignore availability warnings from clang. Fixes #4255. (#4768)
Fixes https://github.com/xamarin/xamarin-macios/issues/4255.
2018-09-07 07:20:04 +02:00
Rolf Bjarne Kvinge bd32b74347
Add support for delegates as return values in protocol members. Fixes #4102. (#4758)
* Add support for delegates as return values in protocol members. Fixes #4102.

This required a few changes:

* The generator now emits the DelegateProxy attribute for property getters in
  protocol interfaces.
* The generator now emits the DelegateProxy attribute in ProtocolMember
  attributes (and the ProtocolMember attribute has been extended with
  additional properties for this purpose).
* The generator now emits the BlockProxy attribute for the parameter in
  property setters.
* The generator now emits the BlockProxy attribute in ProtocolMember
  attributes for property setters.
* The static registrar now emits the metadata token for the
  DelegateProxy.DelegateType property into the generated code so that the
  DelegateProxy attribute itself isn't needed at runtime. This is required
  when the dynamic registrar has been optimized away.

Fixes https://github.com/xamarin/xamarin-macios/issues/4102.

* [tests] Update MX4105 test to expect new warnings.
2018-09-06 16:20:23 +02:00
Rolf Bjarne Kvinge e83a994fe0
Make the bgen build respect the BUILD_DIR variable. Fixes maccore#959. (#4700) (#4724)
* [src] Fix bgen build to support custom output directory for api comparison. Fixes maccore#959.

This broke in 87c27e0c3f, which made bgen
compile using a project file (I forgot to verify that it wouldn't affect the
API comparison, and the PR build didn't complain because problems with the API
comparison typically show up in subsequent PRs).

https://github.com/xamarin/maccore/issues/959

* [src] Fix response file usage to use BUILD_DIR, so that API comparison can redirect as expected.

* [src] Fix generation of generator.csproj's dependency file to use BUILD_DIR, so that API comparison can redirect as expected.

* [src] Fix bgen.exe's dependencies.

* Use full paths to create-makefile-fragment.sh.
2018-08-29 17:41:55 +02:00
Rolf Bjarne Kvinge 33c1db4b68
Store the minimum mono version for Xamarin.Mac in one place only (Make.config) and bump it to 5.14. Fixes #4120. (#4695)
* Store the minimum mono version for Xamarin.Mac in one place only (Make.config) and bump it to 5.14. Fixes #4120.

I've verified that we fail at launch of running on 5.12, while 5.14 works fine
(to launch at least), so the minimum system mono version is _at least_ 5.14.

Fixes https://github.com/xamarin/xamarin-macios/issues/4120.

* [mmp] Load mono's version file instead of using pkg-config to get mono's version.

pkg-config will only get three parts of the version, while the version file
has all four parts.

This is important, since we're now verifying the four parts of the version
file, and without loading those four from the system, we'll fail builds like
this:

    error MM0001: This version of Xamarin.Mac requires Mono 5.14.0.136 (the current Mono version is 5.14.0).

because the three part version's fourth number is assumed to be 0.

* Only verify mono runtime version when running with system/dynamic mono.

There should be no need to verify the mono runtime version when embedding mono:

* If it's a mono we're shipping, something very bad happened in our
  build/package for it to be an invalid mono.
* If it's a system mono that's being embedded, then we verify in mmp at build
  time.

In the first scenario (a mono we're shipping), the problem is that the mono
we've built does not report back the full version number (with four parts) [1],
which means we'll fail any check whose requirements are identical for the
first three parts, and non-zero for the last.

[1] The fourth part of the version number is created/calculated when packaging
mono, and we're not packaging it.
2018-08-29 14:28:56 +02:00
Sebastien Pouliot 9f0d2f52f5
[apidiff] Update XML references with 15.8 as the new base (master) (#4673) 2018-08-27 18:29:44 -04:00
Rolf Bjarne Kvinge 3e661ae5f2
Make the bgen build respect the BUILD_DIR variable. Fixes maccore#959. (#4700)
* [src] Fix bgen build to support custom output directory for api comparison. Fixes maccore#959.

This broke in 87c27e0c3f, which made bgen
compile using a project file (I forgot to verify that it wouldn't affect the
API comparison, and the PR build didn't complain because problems with the API
comparison typically show up in subsequent PRs).

https://github.com/xamarin/maccore/issues/959

* [src] Fix response file usage to use BUILD_DIR, so that API comparison can redirect as expected.

* [src] Fix generation of generator.csproj's dependency file to use BUILD_DIR, so that API comparison can redirect as expected.

* [src] Fix bgen.exe's dependencies.

* Use full paths to create-makefile-fragment.sh.
2018-08-27 16:46:01 +02:00
Rolf Bjarne Kvinge e51c2af9f8 [mmp] Set DEVELOPER_DIR to our Xcode. (#4691)
This makes it possible to build mmp (the partial static registrar code) with
the wrong system Xcode (which is not supported, but that doesn't mean we can't
try to make it mostly work to ease our lives).
2018-08-24 14:14:53 -04:00
Sebastien Pouliot 7ea465f4c8
[apidiff] Update XML references with 15.8 as the new base (#4671) 2018-08-24 12:03:43 -04:00
Rolf Bjarne Kvinge bc5400e861
[mmp] Show an error if trying to build a 32-bit app with Xcode 10. Fixes #4569. (#4684) (#4690)
Fixes https://github.com/xamarin/xamarin-macios/issues/4569.
2018-08-24 16:23:56 +02:00
Sebastien Pouliot 19173951d0
[apidiff] Update XML references to the new 15.8 stable release (#4687) 2018-08-24 08:25:14 -04:00
Rolf Bjarne Kvinge 5da88bfbc7
[mmp] Show an error if trying to build a 32-bit app with Xcode 10. Fixes #4569. (#4684)
Fixes https://github.com/xamarin/xamarin-macios/issues/4569.
2018-08-24 12:28:10 +02:00
Rolf Bjarne Kvinge 61228d8e4a [mtouch] Build using csproj instead of manual csc command. Partial fix for #4384.
* Make sure mtouch.csproj builds using the same compiler arguments as the makefile used.
* Build mtouch.exe using msbuild in the makefile, and clean up the resulting unused make logic.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/4384.
2018-08-23 17:33:58 +02:00
Rolf Bjarne Kvinge 104f08185b [mmp] Build using csproj instead of manual csc command. Partial fix for #4384.
* Make sure mmp.csproj builds using the same compiler arguments as the makefile used.
* Clean up mmp.csproj by removing stuff that was left over from when it was a Xamarin.Mac project.
* Build mmp.exe using msbuild in the makefile, and clean up the resulting unused make logic.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/4384.
2018-08-23 17:33:57 +02:00
Rolf Bjarne Kvinge 51d3b9806c Add a tool that can list all inputs for a given csproj, and create a corresponding make variable. 2018-08-23 17:33:42 +02:00
Rolf Bjarne Kvinge 444d13ec3a Remove unneeded solution to simplify things / avoid confusion. 2018-08-23 17:33:36 +02:00
Rolf Bjarne Kvinge 759c3f22b4 [mtouch] Build using csproj instead of manual csc command. Partial fix for #4384.
* Make sure mtouch.csproj builds using the same compiler arguments as the makefile used.
* Build mtouch.exe using msbuild in the makefile, and clean up the resulting unused make logic.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/4384.
2018-08-23 13:49:40 +02:00
Rolf Bjarne Kvinge 0d6c74e3d0 [mmp] Build using csproj instead of manual csc command. Partial fix for #4384.
* Make sure mmp.csproj builds using the same compiler arguments as the makefile used.
* Clean up mmp.csproj by removing stuff that was left over from when it was a Xamarin.Mac project.
* Build mmp.exe using msbuild in the makefile, and clean up the resulting unused make logic.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/4384.
2018-08-23 13:49:40 +02:00
Rolf Bjarne Kvinge 03075f1142 Add a tool that can list all inputs for a given csproj, and create a corresponding make variable. 2018-08-23 13:49:40 +02:00
Rolf Bjarne Kvinge 30af5e34ad Remove unneeded solution to simplify things / avoid confusion. 2018-08-23 12:32:57 +02:00
Sebastien Pouliot d99be7a03e
Merge d15-8 into xcode 10 2018-08-21 09:29:35 -04:00
Sebastien Pouliot 9f90691820
[mtouch] Add the option of always weak link a framework. Fixes #4628 (#4641)
Linking with CoreNFC crash applications on iOS 12 on iPad (and likely
other device not supporting, or supported, for NFC).

This used to work on iOS 11.x (when introduced). The solution is to
always **weak** link CoreNFC (since we can't guess devices)

https://github.com/xamarin/xamarin-macios/issues/4628
2018-08-20 08:34:29 -04:00
Chris Hamons 1db19858ef Order additional arguments after response file (#4607) (#4612)
- https://github.com/xamarin/xamarin-macios/issues/4594
- There were being adding _before_ the response file which meant options that were overriding defaults were not being honored
2018-08-14 08:57:29 -04:00
Vincent Dondain eec95e881c Merge branch 'd15-8' into xcode10-rebase-15.8 2018-08-13 21:04:56 -04:00
Chris Hamons ecfc5ce917
Order additional arguments after response file (#4607)
- https://github.com/xamarin/xamarin-macios/issues/4594
- There were being adding _before_ the response file which meant options that were overriding defaults were not being honored
2018-08-13 13:09:31 -05:00
Manuel de la Pena 7c7f46da28
[iTunesLibrary] Xcode 10 beta 3 support. (#4462) 2018-08-08 16:34:16 +02:00
Miguel de Icaza 8960cc0022
Merge pull request #4251 from migueldeicaza/xcode10-network
[Network, Security] Bindings for Network, Security, DispatchIO and some classes needed to port samples
2018-08-08 09:55:06 -04:00
Rolf Bjarne Kvinge 9d65e42f58 Fix testing 32-bit XM apps. Fixes maccore issue 884. (#4555)
* [jenkins] Only XM apps with variations are Classic/32-bit apps, so adjust ignore logic accordingly. Fixes maccore issue 884.

Fixes https://github.com/xamarin/maccore/issues/884.

* [mmp] Fix passing -stdlib=libc++ to clang.

* [tests] Fix 32-bit XM issues.

* [xharness] Add support for building 32-bit XM apps by using Xcode 9.4.

* [xharness] Since xharness can now build 32-bit mac apps, enable them by default.

* Remove debug code.

* Remove unused variable.
2018-08-03 17:06:23 -04:00
Miguel de Icaza 4f33e6ab7b [CoreFoundation, Network, Security] Address review comments
* CoreFoundation/DispatchData: avoid possible integer overflow

* Network: move attributes for types introduced in Xcode10 from the
  members to the types.

* Network: for callbacks that surface INativeObjects, rather than using

* Hide P/Invokes that are not currently surfaced so xtro tests can track this

* guidelines: Ip -> IP

* SecIdentity2: fix a leak by releasing the returned array, check for handle being null.

* SecTrust2: check for handle being null.
2018-07-31 16:30:23 -04:00
Rolf Bjarne Kvinge d871a503f5
Specify when iOS got headers for MetalPerformanceShaders. (#4524)
Fixes this problem in the MT4134 test:

    Process exited with code 1, command:
    /Applications/Xcode83.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang  -Wno-receiver-forward-class -Wno-objc-missing-super-calls -gdwarf-2 -I/Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/git/SDKs/MonoTouch.iphonesimulator.sdk/usr/include -isysroot /Applications/Xcode83.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator10.3.sdk -Qunused-arguments -fobjc-legacy-dispatch -fobjc-abi-version=2 -mios-simulator-version-min=11.4 -arch x86_64 -c -o /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory513/mtouch-test-cache/x86_64/registrar.o -x objective-c++ /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory513/mtouch-test-cache/registrar.m
    In file included from /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory513/mtouch-test-cache/registrar.m:2:
    /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory513/mtouch-test-cache/registrar.h:47:9: fatal error: 'MetalPerformanceShaders/MetalPerformanceShaders.h' file not found
    #import <MetalPerformanceShaders/MetalPerformanceShaders.h>

Note that the error is because the test is building with Xcode 8.3 (and this
is also why the problem wasn't found by the PR bots: they don't have older
Xcodes installed to run this particular test).
2018-07-30 16:11:11 +02:00
Rolf Bjarne Kvinge fd05ba6a79
[mtouch] Show warnings when we can't find referenced assemblies. (#4511)
* [mtouch] Show warnings when we can't find referenced assemblies.

This would have helped track down #4235.

* Improve MT0137 warning to indicate the type of the attribute causing the warning.
2018-07-30 10:55:23 +02:00
Miguel de Icaza b8cf7b2bd8 Merge remote-tracking branch 'remotes/origin/xcode10' into xcode10-network 2018-07-27 13:45:55 -04:00
Rolf Bjarne Kvinge 69eb5cf1a7
[mtouch] Rename method that clashes with new method in base class to fix compiler warning. (#4516)
Rename a method that clashes with a new method in a base class to avoid a
compiler warning about hidden inherited members.

Fixes:

    xamarin-macios/tools/linker/MobileSweepStep.cs(41,26): warning CS0114: 'MobileSweepStep.SweepAssembly(AssemblyDefinition)' hides inherited member 'SweepStep.SweepAssembly(AssemblyDefinition)'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword.
2018-07-27 17:06:27 +02:00
Rolf Bjarne Kvinge 215ab7fc1a
[mtouch] Unify code to detect and handle frameworks that aren't supported in the simulator. Fixes #4422. (#4510)
Unify the code to detect frameworks that aren't supported in the simulator (we
had switches in two places, now this data is stored per framework).

Also remove some of the Metal frameworks for some of the platforms from these
lists (since they're now available in the simulator in some cases), which
fixes #4422.

It also seems CoreAudioKit is now available in the simulator (it wasn't in the
first Xcode 7 beta, but apparently added in a later beta. This made our
exclusion incorrect, but we never noticed).

https://github.com/xamarin/xamarin-macios/issues/4422
2018-07-27 16:30:08 +02:00
Rolf Bjarne Kvinge 923b93309c
[mmp] Bump project file to v4.6 to fix compiler error when building in VSfM. (#4515)
Fixes:

    xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs(310,60,310,73): error CS0117: 'Array' does not contain a definition for 'Empty'
2018-07-27 16:29:27 +02:00
Rolf Bjarne Kvinge 9e31d07ecc [mtouch] Fix build from csproj. (#4503) 2018-07-25 15:43:38 -04:00
Rolf Bjarne Kvinge 72124256f9
Merge pull request #4501: Use libc++ instead of stdlibc++ for Xamarin.Mac too.
Use libc++ instead of stdlibc++ for Xamarin.Mac too.

See 0d31720770 for more info.

Also revert a series of commits that bumps min macOS version from 10.7 to 10.9
2018-07-25 17:10:21 +02:00
Rolf Bjarne Kvinge f12c7259a8
Revert "[mtouch] Work around broken tvOS headers in Xcode 10 beta 1." (#4502)
This reverts commit 663eaeb389.
2018-07-25 16:00:22 +02:00
Rolf Bjarne Kvinge a339290fac Revert "More 10.7 -> 10.9 bumps"
This reverts commit 24a4360600.
2018-07-25 11:56:18 +02:00
Marek Safar 10d98e67d8 [mtouch] Pass features not available on iOS to linker (#4426) 2018-07-24 22:30:18 -04:00
Miguel de Icaza d5248e6bb4 Merge remote-tracking branch 'remotes/origin/xcode10' into xcode10-network 2018-07-24 11:11:24 -04:00
Alex Soto 24a4360600 More 10.7 -> 10.9 bumps 2018-07-18 15:10:41 -05:00
Manuel de la Pena 60398bf53b
[MediaPlayer] Xcode 10 beta 2 support. (#4387) 2018-07-10 18:38:19 +02:00
Miguel de Icaza ee4faee1c9 [Network] Declare the Network library in the relevant places 2018-07-05 15:01:47 -04:00
Manuel de la Pena fce1e4c135 [NaturalLanguage] Xcode 10 beta 3 update. (#4390) 2018-07-04 14:43:00 -04:00
Chris Hamons 48767e21eb
[mac] AppKit Xcode 10 beta 1 (#4326) 2018-07-02 06:45:34 -05:00
Rolf Bjarne Kvinge e110612118
[registrar] Improve error message when failing to create a managed wrapper for a native handle. (#4360)
* Convert it into a MM8027/MT8027 error (with documentation).
* Add information about the selector and managed method that triggered the error.

Now the problem reported in issue #4254 shows up as:

> ObjCRuntime.RuntimeException: Failed to marshal the Objective-C object 0x7f8080412810 (type: UIView). Could not find an existing managed instance for this object, nor was it possible to create a new managed instance (because the type 'UIKit.UIView&' does not have a constructor that takes one IntPtr argument).
> Additional information:
> 	Selector: popoverController:willRepositionPopoverToRect:inView:
> 	Method: UIKit.UIPopoverController+_UIPopoverControllerDelegate.WillReposition(UIKit.UIPopoverController, CoreGraphics.CGRect ByRef, UIKit.UIView ByRef)

instead of just:

> ObjCRuntime.RuntimeException: Failed to marshal the Objective-C object 0x7f8080412810 (type: UIView). Could not find an existing managed instance for this object, nor was it possible to create a new managed instance (because the type 'UIKit.UIView&' does not have a constructor that takes one IntPtr argument).

which makes it much easier to understand, track down, and fix/work around,
both for customers and ourselves.
2018-06-29 14:38:28 +02:00
Sebastien Pouliot 412f0938b5
[apidiff] Update XML definitions to 15.7 stable (#4365) 2018-06-28 21:30:35 -04:00
Sebastien Pouliot b63f668a4e
[tvos][tvuikit] Add new TVUIKit (up to beta 2) (#4346) 2018-06-28 08:51:38 -04:00
Rolf Bjarne Kvinge 0d31720770
Use libc++ instead of stdlibc++ when compiling with Xcode 10. (#4348)
Xcode 10 doesn't ship with stdlibc++ anymore, we need to use libc++ instead.

This is documented in Xcode 10's release notes:

> Building with libstdc++ was deprecated with Xcode 8 and is not supported in Xcode 10 when targeting iOS. C++ projects must now migrate to libc++ and are recommended to set a deployment target of iOS 7 or later.

This fixes a problem when compiling certain system headers as Objective-C++.

References:

* https://twitter.com/jeremyhu/status/1003882060556062720
* https://stackoverflow.com/a/50734510/183422
* https://trello.com/c/PsHpNHq6/113-40824697-scenekith-doesnt-compile-as-objective-c
2018-06-28 14:49:22 +02:00
Ludovic Henry bc492585d1 Bump to mono/2018-04 (#3856)
* Bump mono to 2017-12

Commit list for mono/mono:

* mono/mono@4116105b8b [monodroid] Build linker-analyzer tool for monodroid
* mono/mono@34634352e1 [interp] Fix build when disabled (2)
* mono/mono@4b62c55e7d [runtime] Fixes issue when compiling with -no_weak_imports
* mono/mono@9a2543e8c0 Merge pull request #6275 from vargaz/2017-12-6191
* mono/mono@a68cfd2ffa Merge branch '2017-12' into 2017-12-6191
* mono/mono@84f05e8817 [interp] disable weak-fields.exe (#6191)
* mono/mono@ea6f8ab201 [aot] Fix aot+llvm after the weak field changes. (#6248)
* mono/mono@17f4b4286f [threads] Fix leak of gchandle to MonoInternalThread
* mono/mono@4f130913c6 [mini] isalnum() respects encoding in python3, we only want to have ASCII chars (#6199) (#6265)
* mono/mono@dd1faf6f54 [android] Android NDK does not contain API level/platform 12
* mono/mono@febbfd1e3e [interp] Fix build when disabled (#6224)
* mono/mono@0c5a524e50 [tests] Disable weak-fields.exe on FullAOT as well
* mono/mono@ec4a957151 Bump version to 5.10 (#6157)
* mono/mono@58618dea1e [tests] Disable weak-fields.exe on ARM
* mono/mono@a21fb19fc7 [mcs] Don't emit tuple names for a private types
* mono/mono@db05a2523c [llvm] Update the llvm backend to work with the 2017-12-01-31d7f39423874d52922c06484f2c2af216844b4d branch of the mono llvm fork. (#6143)
* mono/mono@2bab8fa49e [Profiler] Fix parsing bug when `jit` is enabled
* mono/mono@5bdaef7e5f [runtime] Add support for weak fields. (#5972)
* mono/mono@d107f0852c [jit] Fix the DISABLE_JIT build. (#6152)
* mono/mono@e2e34c157c [linker-analyzer] Fix error reporting
* mono/mono@0ae98538f6 Merge pull request #6148 from alexrp/profiler-stress-msbiology
* mono/mono@f714138216 [acceptance-tests] Disable the msbiology test completely.
* mono/mono@ce96441a10 [mem access] don't do regular store if it's already handled by the unaligned case
* mono/mono@465e2036d3 [w32handle] Don't enter GC SAFE around calls to w32handle_wait_{one,multiple} (#6132)
* mono/mono@f079d5f961 [interp] move interp functions into a callback
* mono/mono@13d221bf40 [mini] Add missing try holes
* mono/mono@f408d2c4c4 [log] Rework MONO_TRACE_* to allow for nested io-layer masks (process, file, handle, etc.) (#6138)
* mono/mono@c12b749434 Merge pull request #6134 from alexrp/master
* mono/mono@225071a2a5 [llvm] Fix the build. (#6142)
* mono/mono@c8bf8c287a     [runtime] Replace the C and perl versions of the genmdesc tool with a python version. (#6140)
* mono/mono@3635db23fc Cleanup unused MONO_DISABLE_SHM env var (#6141)
* mono/mono@9c2c689a61 Mini h cleanup (#6072)
* mono/mono@dcbc55c615 [msvc] Update csproj files (#6137)
* mono/mono@73c6a2ee50 Merge pull request #6135 from YuriyGS/DataGridViewCell-Border
* mono/mono@26de079c89 [profiler] Correctly encode counter type/unit/variance values.
* mono/mono@be6c2af639 Additional cell paddings in TextBoxCell:  - 1 pixel for right and bottom to compensate cells CellBounds overlapping;  - one more pixel for top, right and bottom to have one pixel gap between text and border. Left border had a good gap already (why?). No call DrawText for cell if there is no rectangle at all.
* mono/mono@384a163cfa Drawing row & column divider and take it into account for drawing borders. Implemented paint for all missing border styles.
* mono/mono@0c873d207a AdjustCellBorderStyle - implemented edge/non-edge header/non-header row and column border styles fixed. Fixed singleVerticalBorderAdded and singleHorizontalBorderAdded flags for the AdjustCellBorderStyle method call.
* mono/mono@2bd75f83ea Outset and SingleHorizontal border styles fixed
* mono/mono@0239710580 [profiler] Ensure the profilers behave sensibly when loaded during AOT compilation.
* mono/mono@0c88bc2ca3 Merge pull request #6115 from alexrp/profiler-lls-fix
* mono/mono@804979969a Merge pull request #6110 from alexrp/master
* mono/mono@370fd7bb86 un-commented HmacSha256Signature bug 35661
* mono/mono@c5d3bf2428 [msvc] Update csproj files (#6131)
* mono/mono@33afa19ce3 [mcs] Implements C#7.1 default literal
* mono/mono@425c62c5da [interp] disassembler for mint instructions should return a string instead of printing char by char (#6114)
* mono/mono@c79c456bd8 Merge pull request #6043 from kumpera/wasm-p2
* mono/mono@58d94f4f7f [loader] Don't assert on abstract methods in get_method_constrained (#6109)
* mono/mono@b4eb34de9b Merge pull request #6121 from akoeplinger/bump-msbuild
* mono/mono@38cc502132 [ci] Make bockbuild step fatal for run-test-mac-sdk.sh
* mono/mono@8d1ef54321 [ci] Skip System.Runtime.CompilerServices.Unsafe tests on arm32 too
* mono/mono@c36f5afb58 [profiler] Add an assertion to the log profiler to catch the thread resurrection case.
* mono/mono@22d22ff3d5 [profiler] Remove tools_thread checks when raising profiler thread events.
* mono/mono@cd46e14ee4 [profiler] Use thread_exited profiler event for recording thread end events.
* mono/mono@832e161fc9 [profiler] Add thread_stopping and thread_exited profiler events.
* mono/mono@8d487ae8e2 Bump bockbuild to upgrade expat library (#6093)
* mono/mono@c92f638d2e [interp] small improvment for error reporting in interp compile method callback
* mono/mono@7ed2c02d0c [aot] encode interp_in wrappers with proper signature
* mono/mono@fcfaf09acb [interp] fix copy/paste-typo in n2m macro magic
* mono/mono@ccc1bd2c18 [aot] add more signatures for interp_in wrapper needed for iOS
* mono/mono@afea7b6c79 [System] Add corefx tests for System.CodeDom (#5623)
* mono/mono@eb11cee53c Bump msbuild to xplat-master branch
* mono/mono@0927d51418 [runtime] Implement a few ModuleBuilder getters (#5787)
* mono/mono@b3fad3f0f8 [msvc] Update csproj files
* mono/mono@f5fc773512 [w32handle] Pass MonoW32Handle to more places (#5570)
* mono/mono@87500ea50a [profiler] Improve nodefaults usage.
* mono/mono@ea10d2f2f8 Bump API snapshot submodule
* mono/mono@6be02ed6c7 Don't run System.Runtime.CompilerServices.Unsafe tests due to JIT crash on i386
* mono/mono@3b00c67e0a Bump API snapshot submodule
* mono/mono@82151ac4fa [corlib] Adds Span/Memory tests
* mono/mono@2ab06befe9 [profiler] Make it possible to trigger heapshots from the M.P.L library.
* mono/mono@dcf567ff64 [mcs] Populate referencecontainer member-cache correctly. Fixes #60860
* mono/mono@c1fd42eac8 Merge pull request #6097 from mono/slluis-patch-1
* mono/mono@984f648466 [sdks] Use runtime logging features to intercept Console.{Out,Error} and runtime logs for instrumentation (#6083)
* mono/mono@20de41832a Merge pull request #6078 from alexrp/profiler-docs
* mono/mono@41a3571272 [acceptance-tests] Run shorter version of GCStress on PRs and update targets (#6106)
* mono/mono@198147add4 Fix MonoContextSimdReg usage on non-glibc Linux amd64(#6007)
* mono/mono@b25e55028b Merge pull request #6101 from DavidKarlas/gcrootFromStart
* mono/mono@a84fa6652f [msvc] Update csproj files (#6105)
* mono/mono@6ed4adc2d8 [System][Test] Only Xamarin.iOS has a synchronization context by default.
* mono/mono@22f0977132 [ci] Update acceptance-tests
* mono/mono@22adb80c21 Update roslyn tests
* mono/mono@5f7452f384 Merge pull request #5273 from vladimir-kazakov/xmlenc-from-corefx
* mono/mono@f3706fac10 [profiler] Report GC roots outside of heapshots unless the nodefaults option is given.
* mono/mono@46c997fdf7 Bump API snapshot submodule
* mono/mono@82bca175c4 [LogProfiler] Removed GcRoot events logging from start GcRoots should only be reported/captured during heapshot. We already set callback when heapshot collection starts and unset it when heapshot is finished. Which means after 1st heapshot is taken we don't log them outside heapshot. Hence we shouldn't be logging them from start...
* mono/mono@e51565c7e5 [msvc] Update csproj files (#6100)
* mono/mono@9ed8574570 XMLENC from .NET Core.
* mono/mono@031405e9cc [corlib] Fix flaky ThreadPoolTests.AsyncLocalCapture test (#6099)
* mono/mono@e8e92e5323 [genproj] Support setting /langversion in csproj (#6096)
* mono/mono@d29cc4770a [bcl] Remove the test for ExecutingAssembly.EntryPoint, it behaves in different ways on different configurations. (#6095)
* mono/mono@b736b420b5 Fix invalid enum values in LogGCEvent
* mono/mono@ec117584a2 [corlib] Update exception message to match .net
* mono/mono@4f0fd2a59b [mini] Align stack when resuming to catch handler
* mono/mono@3325bdfbd5 [mini] Add counter for try holes memory usage
* mono/mono@78933c423f [mini] Add missing try holes
* mono/mono@98d3906a39 [mini] Fix clause try hole checking
* mono/mono@5ef930b5f8 [bcl] Build some assemblies with -warnaserror (#5295)
* mono/mono@7b4dfeebc4 Merge pull request #5836 from marek-safar/corefx-bump
* mono/mono@edc590a3d3 Bump API snapshot submodule
* mono/mono@4535442e84 [ci] Switch .pkg PR build to pipeline script as well (#6092)
* mono/mono@484a9089a8 [corlib] Disable test check which is timezone dependent
* mono/mono@e663bd7c92 Exclude any Mono marked corefx tests
* mono/mono@5eb884bab8 Fixes wrong argument name
* mono/mono@431e36f731 Bump mcs bootstrap version
* mono/mono@1cc3bc58be Bump corefx
* mono/mono@ecd85dc839 [build] Support api-snaphot assembly references
* mono/mono@5c2a49f4b6 Add back some more legacy profiler APIs (#6044)
* mono/mono@00e2b06f2f Bump cecil & linker to latest. (#6081)
* mono/mono@c2fceeaf39 [tests] Adjust ifdefs to get the expected behavior for Xamarin.Mac/Modern tests. (#6086)
* mono/mono@19a7107a03 [tests] Adjust ifdefs to get the expected behavior for Xamarin.Mac's cryptography tests. (#6091)
* mono/mono@9107efe94d [api-diff] Only delete .cs files in the api diff
* mono/mono@7ed25b0be4 [msvc] Update csproj files (#6087)
* mono/mono@011d28de46 Bump roslyn
* mono/mono@16cf089281 [profiler] Clean up the AOT profiler a bit.
* mono/mono@0f985ed885 [profiler] Skip lines not starting with +/- in coverage filter files.
* mono/mono@76872edd27 [profiler] Use a new suppression file for the coverage profiler.
* mono/mono@d1748f7c58 [profiler] Remove coverage options from the help text in the log profiler.
* mono/mono@7c8f5e02b2 [profiler] Don't document the nocalls option.
* mono/mono@9b0c6fc45d [profiler] Exit when printing the usage info.
* mono/mono@0d123027b0 [profiler] Remove the iomap profiler.
* mono/mono@c7f9875f27 [man] Rewrite the profiler-related man pages.
* mono/mono@cbe30987b0 [samples] Clean up the profiler sample and add a simple makefile.
* mono/mono@0abcdc9c60 [mprof-report] Include domain and context reports in the default set.
* mono/mono@8ab10ff01d [profiler] Document the AOT profiler file format.
* mono/mono@53084a4098 [profiler] Add a comment to profiler-events.h about backwards compatibility.
* mono/mono@80788a3c50 [docs] Improve profiler API documentation.
* mono/mono@908d10de6c [exdoc] Don't transform newline characters to spaces.
* mono/mono@528e793ce3 [exdoc] Support Doxygen-style code blocks.
* mono/mono@aa19b6aa18 [exdoc] Support more Doxygen-style formatting.
* mono/mono@5d2febd966 [exdoc] Don't insert unnecessary tab characters.
* mono/mono@076632c3e9 Remove CodeDomConfigurationHandler from machine.config (#6070)
* mono/mono@718247da6f [bcl] Remove an ObjCRuntime reference from the TimeZone tests, it shouldn't be needed any more, and it prevents the tests from compiling on the monotouch profile. (#6079)
* mono/mono@f1f3ae49f0 [sdks] Fix Android pick of mono runtime (#6080)
* mono/mono@9d6f430994 Merge pull request #6067 from lambdageek/bug-60545-fixup-ginst
* mono/mono@8aed7ab89c [aot] Add generic instances referenced by MONO_PATCH_INFO_METHOD_RGCTX patches. Fixes #60771. (#6075)
* mono/mono@c8cd5a5710 Use image set to store and allocate MonoClass representing arrays and pointers whose elements types may contain generic instances from other images. This can be true for array element classes which are generic instances (List<NonCorlibTyp>[]) or arrays (List<NonCorlibTyp>[][]).
* mono/mono@ddace393cf [bitcode] Disable test_0_float_return_spill in bitcode to get green tests. (#6073)
* mono/mono@27eed3574d [ci] MSBuild related fixes (#6071)
* mono/mono@8e09c454f4 [wasm] Rewrite m2n-gen in C#
* mono/mono@6549011576 [wasm] Address review issues.
* mono/mono@8ea4864f30 [sdks] Add an ios test runner. (#6063)
* mono/mono@9a882ab9cf [class] Make some class setup methods mistakes less costly to make (#6048)
* mono/mono@d3c7faa750 [ci] Add Jenkins pipeline script for building OSX and Windows packages (#6065)
* mono/mono@7e9074b54c [loader] inflate constrained result if constraining an inflated generic method
* mono/mono@ef0f3a53f3 [msvc] Update csproj files (#6066)
* mono/mono@1f59d0958f [bcl] Add an .exclude file to disable some corlib tests when running with the mono sdk. (#6064)
* mono/mono@e5248979fe [sdks] Update Android for integration with XA (#6058)
* mono/mono@6beed5f791 [System.Net.Http]: Fix "Content-Length: 0" logic for requests without body.
* mono/mono@a178a5273a [runtime] Move mono_aot_can_dedup into aot-runtime
* mono/mono@2c160ed9a7 [mcs] C# 7.2 ref struct feature
* mono/mono@73bd521c07 Bump NuGet.BuildTasks (#6004)
* mono/mono@a6e7c1f81c [tools] Fix .apps generated by MacPack not running when Mono 5 is installed on macOS (#6024)
* mono/mono@fab0ce54d3 [System.Windows.Forms] FileDialog internationalization (#6052)
* mono/mono@21ba3d0d9d [corlib] Move System.Runtime.InteropServices.RuntimeInformation to co… (#6060)
* mono/mono@3259e04ace [loader] Rework get_method_constrained (Fixes #60545)
* mono/mono@92f20ae75d [tests] Mono test for contravariant constrained.callvirt
* mono/mono@0bbc3e8c15 [runtime] Cleanup mono_runtime_get_main_args
* mono/mono@009b508174 Fix the ios build with recent xcode/osx, add comments about possible targets. (#6056)
* mono/mono@dae27ef2ba Fix CryptoConfig.CreateFromName on XM Modern (#6029)
* mono/mono@a985310287 Disable a new test, it's crashing the interpreter
* mono/mono@e5a8111a64 [mcs] Better typed-ref deconstruction for indexers. Fixes #60680
* mono/mono@1d7ec6a3d7 Bump API snapshot submodule
* mono/mono@7a22e06622 Bump cecil
* mono/mono@b44333823d XmlReaderSettings.EnableLegacyXmlSettings should always be false on mono. Fixes bug-60621 (#6014)
* mono/mono@f1a22f31a7 [runtime] Fix test makefrag to accomodate moved tests
* mono/mono@c498a00479 [bcl] Fix the ResolvePathBeforeDirectoryExists test on the mobile profile.
* mono/mono@c2ea774d4c Revert "[touchup] Use HANDLE_FUNCTION_RETURN_OBJ instead of HANDLE_FUNCTION_RETURN_VAL (no change in behavior)"
* mono/mono@9c64c7d390 Merge pull request #6030 from luhenry/corefx-switch-to-c
* mono/mono@29d2176893 Merge pull request #6045 from chamons/bump_master_cecil
* mono/mono@e608ed2386 [touchup] Use HANDLE_FUNCTION_RETURN_OBJ instead of HANDLE_FUNCTION_RETURN_VAL (no change in behavior)
* mono/mono@24fc118eef [sdks] Cleanup wasm targets (#6025)
* mono/mono@18fb8563fb [touchup] Remove redundant code
* mono/mono@5cf1aada52 Merge pull request #6017 from monojenkins/update-csprojs
* mono/mono@421f8553fb Merge pull request #6042 from Unity-Technologies/winrt-time-zone-adjustment-rules
* mono/mono@e3862cb004 Bump cecil
* mono/mono@937fcd1023 [wasm] Unbreak EH
* mono/mono@9a143f99ca [wasm] Fix signature of Monitor::Enter icall.
* mono/mono@82e9c5ccd7 [sdks] Adjust debug spew to help debug GC issues.
* mono/mono@1b9e3ec070 [sdks] Add code to run corlib test suite.
* mono/mono@04d0d026b8 [sdks] Remove debug spew from new nunit driver and add option to run a single test.
* mono/mono@3d80b0b50e [wasm] Don't abort on thread creation, simply fail it.
* mono/mono@0d10ad9a26 [wasm] clock_gettime fails on with EINVAL. gtod works just fine.
* mono/mono@c8ed7a1715 [wasm] Current version of libc abort on getpwnam.
* mono/mono@426109e9c9 [wasm] Rework incremental test runner to work more closely to how nunit works WRT setup steps.
* mono/mono@9e8a648fa7 [wasm] Build the runtime with ASSERTIONS=2 for now to get better crash  diagnostics.
* mono/mono@cb8d515c00 [wasm] Update the wasm m2n tramps.
* mono/mono@d9224b10b2 [interp] Make assertions more usable.
* mono/mono@48c111e123 [wasm] Add better implementation of mono_w32file_get_volume_information.
* mono/mono@fed2587457 [wasm] Return actual stack bounds instead of phony values.
* mono/mono@0d6f22f04c [wasm] Mono relies waaaay too much on mmap returning zero'ed memory, so just do it.
* mono/mono@7cb492db00 [util] Properly Initialize the last entry of a superblock instead of relying on mmap returning zero'd memory.
* mono/mono@88e9d00c52 [corlib] Add wasm source lists for test suite.
* mono/mono@07d07ad907 [wasm] Switch to an incremental nunit test runner to make sure the main thread gets pumped regularly.
* mono/mono@491f4b651f The return value of GetDynamicTimeZoneInformationEffectiveYears in the successful case is ERROR_SUCCESS (0). Adjust failure case to be for return values non 0.
* mono/mono@af08374ef2 [msvc] Update csproj files
* mono/mono@3e1eeec6c3 [System.IO] Directory.Exists() now resolves the full path first. Fixes #60267
* mono/mono@2bb178c7a8 [runtime] Increase the BCL imt trampoline count (fix tests)
* mono/mono@1f4bd60284 [lldb] update interp main loop function name
* mono/mono@4d02be3abf [interp] only access arguments on frame if there are any for sure
* mono/mono@5bc422d733 [interp] end of a clause can point _after_ the last instruction
* mono/mono@d416f570bd Merge pull request #6003 from kumpera/profiler-compat-mode
* mono/mono@b488cacd50 [corefx] Bump corefx to pick switch of System.Native to C
* mono/mono@0435b2ba16 Merge pull request #6027 from lewurm/fix-DefaultThreadCurrentCultureIsIgnoredWhenCultureFlowsToThread
* mono/mono@8a82b292fb Update GdipGetImageDimensions tests to pass against Windows GDI+ (#6008)
* mono/mono@51a8a45906 Fix big endian build problem
* mono/mono@ae9cef9103 [corlib] fix DefaultThreadCurrentCultureIsIgnoredWhenCultureFlowsToThread test
* mono/mono@375471820c [corlib] Don't capture the execution context when UnsafeRegisterWaitForSingleObject is used. Fixes #60029 (#6013)
* mono/mono@c0f6935b45 [sre] Don't warn about duplicate token for MonoArrayMethod
* mono/mono@8b7df777bb [test] Regression test for 60238
* mono/mono@bcaca2dbaf [bcl] Add a Mono.Runtime.Tests assembly which can be used to run the JIT regression tests using nunit. (#6015)
* mono/mono@401ed4d16c [System.Process] Consider `open`'s exit code when using it to start a process. Fixes #19503 (#6010)
* mono/mono@2cc1ae3b29 Provide a special implementation of ReadToEnd for CStreamReader so that it echoes input characters correctly when TermInfoDriver is initialized instead of suppressing them. Fixes bug #40699.
* mono/mono@ca8b8bd346 [runtime] Add Dedup Support to MkBundle (#5484)
* mono/mono@50fa04c136 [runtime] Implement runtime support for inflated wrapper and generic dedup (#5349)
* mono/mono@115b290143 [runtime/corlib] Improve MissingMethodExceptions by including message… and signature. Fixes #60505
* mono/mono@43a23e71e5 Bump API snapshot submodule
* mono/mono@6910dd4bc0 [System.Data] Add missing Microsoft.SqlServer.Server APIs
* mono/mono@c58ab6f4cb more readable assignment
* mono/mono@93ad6575a5 [metadata] make get_darwin_locale thread-safe
* mono/mono@3318b29704 Merge pull request #5985 from YuriyGS/bug60514
* mono/mono@67160915c9 [profiler] Restore 'counters' and 'sampling-real' options
* mono/mono@52d836f5e2 Fix icall parameters to use managed boolean type. (#6006)
* mono/mono@2255c54966 [external] bump nunit-lite in order to include fix for racy FinallyDelegate
* mono/mono@0bba45f06e [interp] fix build on windows (#6000)
* mono/mono@a5248e5e11 [bcl] bringing back InetAccess test category
* mono/mono@a6c2080c24 Merge pull request #5759 from luhenry/w32process-refactor-mono_w32process_get_fileversion_info
* mono/mono@26b76cb879 [profiler] Make profiler arg parsing more compatible with previous version.
* mono/mono@c445fa3262 [runtime] Initialize the min_align field of ptr classes, since they have the 'inited' field set, so mono_class_init_sizes () might not be called for them. Fixes #60634. (#5999)
* mono/mono@0257dcde58 [tests] Add disabled regression test for #49308 (#5997)
* mono/mono@33eb71ae07 [System] Fix DeflateStream crash with high concurrency on Read/Write/Close (#5994)
* mono/mono@bf1b5dced0 [sdks] Remove passing AndroidRunner instance to C# and back (#5988)
* mono/mono@2f308109e1 Fix path to embedded glob.c implementation.
* mono/mono@d1ece840fe [mdbdump] Include guid in xml dump
* mono/mono@5f35ea4b68 [msvc] Update csproj files (#5995)
* mono/mono@05fae5f1fa Add ignoring features option into genproj
* mono/mono@2503f874ca Enable concurrent GC as default mode for Windows MSVC mono sgen builds.
* mono/mono@f23ce4f37e [corlib] Add more tests, embed linker descriptor xml in test assembly
* mono/mono@9afe9e1445 [interp] disable block_guard_restore_aligment_on_exit.exe on CI (#5991)
* mono/mono@d59f8a64ae [jit] Avoid nullifying LDADDR instructions in load_simd_vreg_class (), they could have references if explicit-null-checks are enabled. Fixes #60539. (#5979)
* mono/mono@af818a1709 [msbuild] Change the version used in bockbuild to just '15', instead .. (#5986)
* mono/mono@356c5aaef8 Using padding and border width
* mono/mono@4e43805a1e [Tests] Make Mono.Data.Sqlite tests more robust. (#5982)
* mono/mono@78be18ab99 Merge pull request #5917 from lambdageek/centrinel-ann
* mono/mono@295625bbb0 [sdks] Change how we run test suites on the app (#5894)
* mono/mono@00035e5b68 Include <config.h> in C files that include mono headers
* mono/mono@70807d5198 [coop handles] Mark handles macros with Centrinel SUPPRESS macros
* mono/mono@7d3dc331b5 Mark _MonoObject and managed object typedefs with MONO_RT_MANAGED_ATTR
* mono/mono@d244f6d2c7 Define MONO_RT_MANAGED_ATTR and MONO_RT_CENTRINEL_SUPPRESS macros
* mono/mono@ee20fc0ad9 Remove Boehm specific code path in GC aware hash tables as it can now push/mark roots.
* mono/mono@e348c56a01 [coop] Convert ves_icall_System_Environment_GetCommandLineArgs icall to use coop handles
* mono/mono@4b80cb6861 [bcl] Add .NET 4.7.1 reference assemblies (#5974)
* mono/mono@e45d72f4a8 Merge pull request #5969 from luhenry/backport-master-950ea65c3ba571cd139dc34b48d7101a2e894993
* mono/mono@a9e1c60a63 Merge pull request #5970 from lambdageek/bug-60245
* mono/mono@b78e9b5e98 [interp] disable Test.System.Threading.ThreadTest.TestUndivisibleByPageSizeMaxStackSize (#5966)
* mono/mono@69ec805ff3 [test] FieldInfo.{Get,Set}Value tests for ContextBoundObject
* mono/mono@cd2fd4d81d [remoting] Check for transparent proxy in ves_icall_MonoField_{Get,Set}ValueInternal
* mono/mono@40be6362c6 [System] Add missing ConfigureAwait (#5963)
* mono/mono@ea060b586d [Tests] Fix flaky IO tests due to parrallel execution on Mac bots.  (#5965)
* mono/mono@a45569fe37 [System] Fix NullReferenceException in Win32EventLog (#5949)
* mono/mono@198481639f [interp] clear stack on resuming into the main loop (#5959)
* mono/mono@865e344512 [System]: Override `SslStream.FlushAsync ()` to call the async version on the underlying stream. (#5960)
* mono/mono@a60b50417a [Facades] Use same assembly company/product/copyright attributes as other BCL assemblies (#5961)
* mono/mono@4e01b276ae [interp] enable it by default in configure (#5925)
* mono/mono@a62a7e7e96 Merge pull request #5924 from kumpera/wasm-sdk-integration
* mono/mono@a2649fe604 ignore quick syntax to exclude files in removecomments.sh for local-dist (#5958)
* mono/mono@e3d3433b76 Detect platform tizen and link profiler statically similar to Android.
* mono/mono@de771964ee Add missing build dependency to fix correct parallel build order.
* mono/mono@3c4b261617 [corlib] corefx tests from System.Threading.* and System.Text.RegularExpressions (#5762)
* mono/mono@3e9c2af62a [profiler] Improve NUnit xml reporting (#5954)
* mono/mono@83f9f3a813 Merge pull request #5950 from lateralusX/lateralusX/disable-join-thread-in-detach
* mono/mono@286e62e84d [runtime] Handle ENOTCONN/EHOSTDOWN in mono_w32error_unix_to_win32 (). Print a warning instead of asserting, there are lots of error codes we don't handle, map them to ERROR_NOT_SUPPORTED for now. Fixes #60422. (#5927)
* mono/mono@c3be0663c1 [System] Ignore tests that fail on device until the corresponding bugs have been fixed. (#5951)
* mono/mono@5ed0fab147 [wasm] Fix test driver and mono's JS support library.
* mono/mono@ec78917e10 Bump API snapshot submodule
* mono/mono@c5fa794e98 [bcl] Updates referencesource to 4.7.1
* mono/mono@e2a7e328d3 [mcs tests] clean up interp target
* mono/mono@43f03233f3 [interp] enable Mono.Debugger.Soft tests on CI
* mono/mono@acf3607795 Temporary disable adding thread to joinable threads on none Windows platforms.
* mono/mono@1a79065f8c Ensuring TextBox is properly updated upon setting/clearing password character. (#5947)
* mono/mono@035ad2f118 [mcs tests.make] control with TEST_WITH_INTERPRETER if `run-test` target uses the interpreter
* mono/mono@30fd079c90 [mcs make] introduce TEST_RUNTIME_FLAGS, analogously to TEST_RUNTIME vs. RUNTIME
* mono/mono@879f4bc60f [corlib] annotate failing tests when running in interpreter
* mono/mono@591ab6d34b [interp] properly resolve MonoType of MonoClassField via mono_field_get_type ()
* mono/mono@6f7025ba00 [interp] check interruption request flag properly after allocating an object
* mono/mono@88970711ff [interp] allow MONO_CALL_STDCALL calling convention on cee_calli insn
* mono/mono@292f8ac3c5 [interp] use checked variant of method_get_header and throw exception if there is an error
* mono/mono@dfca26c32f [interp] allow unsigned i8 in pinvoke signature
* mono/mono@9e6c430e5e Have Boehm mark handle stacks rather than using GC tracked memory. Unify handle memory across all GCs.
* mono/mono@29826908fc [interp] Make the interpreter use the JIT exception handling code. (#5943)
* mono/mono@5a88e085f3 [corlib] Fixes NullFullNameForSpecificGenericTypes for mobile profiles
* mono/mono@f58ba94f8c Add g_ptr_array_capacity to retrieve current size of GPtrArray. Allows clients to know if future additions will cause (re)allocations. (#5931)
* mono/mono@733b4a4c9f [ServiceModel.Web] Fix test by adding WebHttpBehavior to WebChannelFactory endpoint on MOBILE
* mono/mono@dc023c2fe0 Fix bug 57938 - FullName not returning null for certain generic types (#5920)
* mono/mono@f6e21efe14 [ci] Coverage-imposed build flags should take top priority (#5940)
* mono/mono@4272b68b76 [interp] Throw exception in case of field access failure
* mono/mono@8f3a51860d [interp] Enable some tests
* mono/mono@14d137029b [interp] Don't sigsegv on field lookup failure
* mono/mono@36d588d62f [interp] Don't assert on ldtoken failure
* mono/mono@5d056c0184 [interp] Fix error propagation from interp invoke
* mono/mono@4c8bff917c [interp] Avoid translating methods while holding a low level lock, make a copy of InterMethod instead, do the translation with the copy, and copy the results back inside the lock. (#5935)
* mono/mono@5fffc1b8cf [interp] Change 'class' to 'klass'
* mono/mono@174bea7caf Replace 'class' identifier usage with 'klass' to avoid compile errors in C++
* mono/mono@81feabe4c6 Consider Facades in Provides: too. Version number challenges remain. (#4874)
* mono/mono@c43d73cfd7 [System.Windows.Forms] Fixes #60435. DataGridViewRow.CreateCellsInstance method is never invoked
* mono/mono@151fa5590f Internationalization support for System.Windows.Forms: (#5886)
* mono/mono@fb0fe43283 [sdb] Make get_this_addr () work with the interpreter. (#5937)
* mono/mono@fa898df0fc [Tests] Fix zip tests on iOS devices. (#5939)
* mono/mono@5143b5a461 [Test] Fix System.IO.Compression.FileSystem tests on iOS devices. (#5938)
* mono/mono@9b9159cb4a [interp] Use xdomain wrappers as with normal jit
* mono/mono@5a1fa0f3df [interp] Don't rethrow current frame exception after an icall
* mono/mono@e2b59a234f [interp] Set correct stack type for icall return
* mono/mono@ae8d913b00 [interp] Fix constructor call on transparent proxies (#5934)
* mono/mono@01e767447b [sdks] Address reviewer suggestion.
* mono/mono@d1349d274f [wasm] Add test runner that executes the mini test suite.
* mono/mono@a0687c199c [wasm] Build the wasm profile is it was configured in.
* mono/mono@db00ae8496 [wasm] Update port to work with master.
* mono/mono@675b190455 [wasm] Workaround for emcc 1.37.22 that miscompiles the inline assembly.
* mono/mono@6f229c1a1b [sdk] Fix wasm build.
* mono/mono@5b118b84e5 [interp] disable appdomain-unload (crashes too often) and add comment (#5922)
* mono/mono@fa7623e0f3 [tests] Allow overriding Mono arguments for JIT and AOT scenarios.
* mono/mono@8ed81c060c Revert "[configure] Test AOT+LLVM if mono was configured to support both. (#5880)"
* mono/mono@033ccb6635 [System.Security] Simplify monodroid test excludes (#5919)
* mono/mono@3df4b8f7f6 [corlib] Add more Assembly*Attribute tests (#5918)
* mono/mono@80a20870af [sdk] Use single : in android target that doesn't get appended to.
* mono/mono@55cae500f5 [wasm] Add wasm-interp target to build the wasm interpreter based runtime.
* mono/mono@f124b4d1b8 Merge pull request #5912 from kumpera/bunch-of-changes-for-sdks
* mono/mono@b73480af34 [Tests] Ensure that only a subset of the System.Security tests are ran on mobile platforms.
* mono/mono@d49e8c32c4 [mkbundle] Enhanced mkbundle cygwin/mingw fallback support. (#5867)
* mono/mono@e0607c34f0 Debugger support for the interpreter (#5902)
* mono/mono@08bb8da2cc [System.Web] Reference source import (#5909)
* mono/mono@bea6d82e80 Unlock `sgen-fin-weak-hash.c`: - Unlock simple counters - Unlock the usage of `next_fin_stage_entry` and `fin_stage_entries` within `add_stage_entry ()`
* mono/mono@2bf3e7e3a9 Prepare `unlocked.h` for the upcoming changes: - add the `volatile` qualifier to all pointer parameters - add `UnlockedWritePointer ()`
* mono/mono@b259c836ab [jit] Move the code handling the MonoLMFExt structures from exceptions-<ARCH>.c to mini-exceptions.c, its the same on all platforms. (#5907)
* mono/mono@35acde58d4 Use getrandom() instead of /dev/urandom on Linux (#5851)
* mono/mono@32d2f28518 [sgen] Collect major after user requested minor collections
* mono/mono@9a879a1b11 [interp] disable broken test cases on CI (#5914)
* mono/mono@0dbdcf2e77 [Mono.Posix] Fix some socket tests on monodroid (#5915)
* mono/mono@8992f0fd05 [runtime] Remove the no_raise argument from mono_register_jit_icall_full (), no icalls call mono_raise_exception () anymore. Rename the 'is_save' argument to 'no_wrapper'. Allow inlining wrappers for all icalls. (#5897)
* mono/mono@92477b9583 [jit] Remove unused mono_interruption_checkpoint_from_trampoline_deprecated () JIT icall. (#5895)
* mono/mono@82579ce9ce Merge pull request #5879 from kumpera/wasm-work-p6
* mono/mono@d208927a5f [sdks] Add notes for the BCL build.
* mono/mono@c133304b95 [android] Fix compilation with recent ndk and sdk target < 16.
* mono/mono@6b3e68486a [sdks] Update bcl target to include wasm profile.
* mono/mono@cc9cb3f6d7 [sdks] Fix autogen invocation and respect Make.config options.
* mono/mono@79ef4d8eef [configure] Test AOT+LLVM if mono was configured to support both. (#5880)
* mono/mono@110888fd66 [interp] Enable more runtime tests for interpreter
* mono/mono@d5028868d3 Merge pull request #5685 from urisimchoni/callspec-ut
* mono/mono@da53cb0e08 [runtime] Rename mono_raise_exception_with_context_deprecated () back to mono_raise_exception_with_context (), its ok to use since it starts unwinding from the CTX argument which points into managed code. (#5896)
* mono/mono@fdcf7da3f4 [amd64] Remove the unused MonoLMF.rip field. (#5904)
* mono/mono@ff078951a5 [w32process] Reduce mmap allocation by mapping file only once
* mono/mono@9fdc0045ad [runtime] Avoid creating callbacks.interp_get_remoting_invoke if the interpreter is not enabled at runtime. (#5905)
* mono/mono@96361e3913 [arm64] Throw OverflowException instead of the more general ArithmeticException.
* mono/mono@ddd07a749f [System.Web] LoginTextLayout from reference source
* mono/mono@dd033ae341 Duplicate friend assembly names and add needed null terminator.
* mono/mono@1c15c3ebd3 Match amd64/arm64 in the way of handling exceptions within trampolines (#5891)
* mono/mono@f5915baa5d [sdks] Fix android configure with latests NDK
* mono/mono@cfba305b7e [corlib][Test] Ignore FileTest.SymLinkLoop until bug #59239 is fixed. (#5889)
* mono/mono@a043b26831 [System.Web] EmptyControlCollection from reference source (#5884)
* mono/mono@f871b90d5e [sdks] Fix Android build.
* mono/mono@ac4095a1ea [sdks] Improve path handling and include local conf file
* mono/mono@2856f523f6 [wasm] Add missing tramp
* mono/mono@4a28d3595c [runtime] fix prev commit build for Linux x64
* mono/mono@6b8b32b6fc [runtime] Fix unit test.
* mono/mono@e1b75723d7 Bugfix: 1.5 stop bits for serial port should set the posix stop bit flag (#5873)
* mono/mono@f2e658cdca [build] Add wasm profile
* mono/mono@6d9d804d62 [System.Web] TableFooterRow from reference source (#5882)
* mono/mono@0a320dbb95 [aot] Error out when using the coverage profiler + aot, its not supported. Fixes #60175. (#5881)
* mono/mono@adbf98b977 [System.Web] CompilationMode from reference source (#5878)
* mono/mono@1f1a1574c2 [System.Web] ScrollBars from reference source (#5869)
* mono/mono@6e529aafcc [System.Web] ObjectDataSourceEventHandler from reference source (#5868)
* mono/mono@5802f03926 [System.Web] WizardStepType from reference source (#5870)
* mono/mono@8e617d38da [System.Web] TableHeaderRow from reference source (#5866)
* mono/mono@aa39bf69f2 [System.Web] IndexedString from reference source (#5872)
* mono/mono@c17cc609da [System.Web] ImageClickEventArgs from reference source (#5871)
* mono/mono@59c42eacf4 [mono/unit-tests] add callspec unit tests for different classs same prefix
* mono/mono@e4b94aa495 [metadata] Avoid matching class with prefix name
* mono/mono@ec038ebb76 [mono/unit-tests] callspec unit testing
* mono/mono@c14b08013c [Microsoft.CSharp] Adds more tests
* mono/mono@b0919d93f9 [sdks] Source drop from xamarin/mono-sdks (#5876)
* mono/mono@55df935275 Merge pull request #5874 from vargaz/fix-60255
* mono/mono@eb9238c05e [jit] Throw the more specific OverflowException instead of ArithmeticException in the ldiv/lrem emulation functions. Fixes #60255.
* mono/mono@067809c50e Add an automated test that will fail if the list of feature names in CompilerServices.RuntimeFeature is changed (#5854)
* mono/mono@a348c12719 Bump roslyn
* mono/mono@5c75f593de Merge pull request #5764 from Unity-Technologies/save-resume-tramp-amd64-xmm-arg-regs
* mono/mono@13a9fb6c7a Merge pull request #5844 from vargaz/fix-60288
* mono/mono@b0983b83cd [mono] Update denied assemblies list
* mono/mono@82e2421819 Build fixes for none Windows desktop platforms.
* mono/mono@e3c239ccdc [arm] Add support for unlimited size/number of arguments to the dyn call code. Part of the fix for #59184. (#5840)
* mono/mono@0f045b1ded [System.Data] Cleanup after #4893 (PR) (#5841)
* mono/mono@00af82567c Bump corlib version for MonoIO coop handle changes.
* mono/mono@1ba4211147 [coop-handles] System.IO.MonoIO.Read
* mono/mono@498eb7dc58 [coop-handles] System.IO.MonoIO.GetCurrentDirectory
* mono/mono@72b5a0e99e [coop-handles] System.IO.MonoIO.get_InvalidPathChars
* mono/mono@6cdc5531dc [coop-handles] System.IO.MonoIO.FindNextFile
* mono/mono@b73d5302b1 [coop-handles] System.IO.MonoIO.FindFirstFile
* mono/mono@52786872cd [coop-handles] System.IO.MonoIO.Write
* mono/mono@77fd6e0846 [coop-handles] System.IO.MonoIO.SetFileAttributes
* mono/mono@16ebef70ed [coop-handles] System.IO.MonoIO.SetCurrentDirectory
* mono/mono@85f4b5b167 [coop-handles] System.IO.MonoIO.ReplaceFile
* mono/mono@8ea394429c [coop-handles] System.IO.MonoIO.RemoveDirectory
* mono/mono@847aec7167 [coop-handles] System.IO.MonoIO.Open
* mono/mono@0de5f20375 [coop-handles] System.IO.MonoIO.MoveFile
* mono/mono@e57d26ebaf [coop-handles] System.IO.MonoIO.GetFileStat
* mono/mono@794f17ef8b [coop-handles] System.IO.MonoIO.GetFileAttributes
* mono/mono@89647e4d20 [coop-handles] System.IO.MonoIO.DeleteFile
* mono/mono@26aaf7617d [coop-handles] System.IO.MonoIO.CreateDirectory
* mono/mono@477d5f3f70 [coop-handles] System.IO.MonoIO.CopyFile
* mono/mono@26ccf75f06 [msbuild] Add symlink to csc.exe in msbuild bin dir
* mono/mono@2b15f1e6b2 [runtime] Fix Windows build break due to renamed mono_error_raise_exception (#5849)
* mono/mono@4b702c8d6a [corlib] Updated LinkerDescriptor
* mono/mono@9502de7852 Merge pull request #5846 from kumpera/wasm-work-p5
* mono/mono@14a6854c79 [scripts] Build 64-bit package by default
* mono/mono@bc3ba3cb5d [arm] Make the generic trampoline call mono_thread_force_interruption_checkpoint_noraise () and throw the exception itself instead of calling the obsolete mono_interruption_checkpoint_from_trampoline (). (#5838)
* mono/mono@79d96a5a8d Fix WCF Windows Linux cross WCF-comunication via NetTcpBinding (without any security Transport|Message). (#5842)
* mono/mono@03ea90cf1f [bcl] Optimize Process.GetCurrentProcess ().MainModule. (#5843)
* mono/mono@cc67bfdcfc [runtime] Allow valuetypes larger than 1MB created by csc/mcs. Fixes #60288.
* mono/mono@f2e1f58a80 [interpreter] Fix the DISABLE_REMOTING build.
* mono/mono@77b4cd11d1 Only null check target for delegate if method is not static. (#5833)
* mono/mono@91a10ffd01 [runtime] Mark mono_raise_exception()/mono_reraise_exception() as external only. Add new _deprecated internal versions. (#5839)
* mono/mono@5edb2a54db [runtime] Improve diagnostics about methods that failed to LLVM-compile by including the typename in the message. (#5706)
* mono/mono@d60877b0f3 Fix tarball build
* mono/mono@2124bda984 Merge pull request #5830 from alexischr/wrench-tests
* mono/mono@7cde4806fd Merge pull request #5632 from luhenry/threads-rework-shutdown
* mono/mono@299ad0f1fd Merge pull request #5825 from BrzVlad/fix-interp-appdomain
* mono/mono@f5ee4a398c Add MacSDK test script
* mono/mono@dc732f0166 [jit] Fix #59182 for the coop case as well. (#5824)
* mono/mono@e9899e4bb1 [interp] Enable appdomain tests
* mono/mono@70cff6b6b0 [interp] Rethrow abort exceptions at end of catch
* mono/mono@043ee9f13d [interp] Interruption checkpoint during branches
* mono/mono@7483082d9a [interp] Handle remoting calls in delegates
* mono/mono@ea73165ca8 [interp] Add lmf when doing icalls
* mono/mono@ee98142c15 [interp] Don't generate remoting wrapper for normal calls
* mono/mono@111a6ed2ff [interp] Fix tls jit pointer fetch
* mono/mono@44b21bca28 Fix bug #58400 - incorrect implementation of LocalPath for file URLs (#5779)
* mono/mono@c26e069703 [interp] remove setjmp/longjmp unwinding machinery
* mono/mono@5e6893ad48 [interp] remove unused ves_exec_method
* mono/mono@15bb34e6d6 Merge pull request #5785 from BrzVlad/fix-59153
* mono/mono@30b5ea7cd9 [MonoError] Add goto_if_nok to reduce duplicated code (#5834)
* mono/mono@f5aca1da30 [tests.make] Filter out comments from test.dll.sources for TEST_FILES
* mono/mono@a8dab358d9 [interp] do not attempt to transform method of open generic class
* mono/mono@1df82c2d51 [threads] Also abort background threads on shutdown
* mono/mono@0b40428d59 [threads] Let mono_thread_detach_internal remove thread from threads
* mono/mono@1538798867 Merge pull request #5778 from alexischr/bug-56003
* mono/mono@61559965a1 [System.Data] move to corefx (#4893)
* mono/mono@ce596ec25c Save and resume full 128-bits of xmm argument registers in trampoline. Add definition of MonoContextSimdReg on amd64 for Windows platform and use for size/offset calculations.
* mono/mono@c50b4ef9c7 [msvc] Update csproj files (#5832)
* mono/mono@5a7d6e3d9a Fix spiller when the dest membase optimization intereferes with lvreg caching. Fixes #20562 (#5747)
* mono/mono@0f9bbb90fb [runtime] Rename atomic functions from the win32 style naming to mono_atomic_<op>_<type>, with a consistent signature on all platforms, including Windows implementation. (#5767)
* mono/mono@1e29ed0d7e [System.Core] Remove duplicated test classes (#5829)
* mono/mono@8af88bd0e6 Update root gitignore (#5831)
* mono/mono@ceec5e9786 [coverage] Fix the printing of nested generic instances. Fixes #60224.
* mono/mono@9cce09b0a2 [runtime] Workaround for verifier bug #59967
* mono/mono@c763b4a250 Bump Roslyn
* mono/mono@6caf00b09c [bcl] Remove AssertExtensions helper classes (#5828)
* mono/mono@cfedbd7aa2 replace min with MIN
* mono/mono@eb5fa1fced fix code-style issues
* mono/mono@bbb109bd03 limit max possible threads in ThreadPool (SetMaxThreads). Fixes bug-60027
* mono/mono@dbb0872f49 [corlib] Adds ValueTuple tests
* mono/mono@0ccfa87a91 [System.URI] Don't reset host string processing on Unicode paths. Fixes #56003
* mono/mono@df37bb7a7c [mini] Don't attempt to compile method of open generic class
* mono/mono@0b60a62ee7 [interp] use POP_VT macro
* mono/mono@6684e29f7a [interp] check stack_type in cee_ldobj
* mono/mono@7777d78b16 [System.Net] Tweak tests for watchOS
* mono/mono@71997d296f [llvm] Fix the returning of vtypes using a hidden argument in bitcode, in some cases, we forgot to generate the code to return the value, causing random data to be returned. Fixes #59956. (#5786)
* mono/mono@17d86bd264 [msvc] Update csproj files (#5823)
* mono/mono@5440d5718b [runtime] Avoid an assertion in mono_profiler_get_coverage_data () if the method doesn't have a body. (#5777)
* mono/mono@e7736ca5cc [ppdb] Add a log message when an assembly has no ppdb debug directory. (#5795)
* mono/mono@1d0e803fbb [runtime] Don't crash when method/assembly with no code coverage does not have debug symbols
* mono/mono@3d00ea31a7 [sre] Register a canonical reflected method for a methodspec token. (Fixes #60233) (#5813)
* mono/mono@4bd3aa2158 [bcl] Update PlatformDetection helpers
* mono/mono@e87cc4822c Bump xunit dependency
* mono/mono@618ef61ae9 [eglib] check if result is set
* mono/mono@464c5916d5 [bcl] Fix test assembly build for monodroid profile (#5808)
* mono/mono@afb822af07 Merge pull request #5803 from BrzVlad/fix-small-warning
* mono/mono@bdababe715 [bcl] Add dependency on .exclude.sources to test assembly (#5804)
* mono/mono@9c2a4ff286 [mini regressions] enable aot-tests.cs & gshared.cs on more configurations (#5791)
* mono/mono@2a294c432e [interp] do not run mcs/tests on ARM on CI
* mono/mono@87694b9ed0 [mcs/tests] make test harness output more verbose on V=1
* mono/mono@d12dda34e4 [mcs/tests] add interp target
* mono/mono@f2bab1910d [linker] update referenced source files
* mono/mono@8e3867013a Bump linker
* mono/mono@9ff18d1dca [msvc] Update csproj files (#5805)
* mono/mono@2d63c93d06 [interp] use correct code base pointer and set native_offset
* mono/mono@acb5f68e3e [interp] avoid leaking MonoMethodHeader data structure by freeing or avoiding it
* mono/mono@d055f9e21f [interp] fix minor leaks around wrappers
* mono/mono@d9922895d4 [monodroid] Enable a number of tests (#5799)
* mono/mono@d8d4307293 [sgen] Fix warning
* mono/mono@c399c787c8 [I18N] Add more encoding tests
* mono/mono@25ad948e02 [corlib] Add corefx System.Text.Encoding tests
* mono/mono@83af047720 [corlib] Add tests for EncoderFallback
* mono/mono@e8ad2487f3 [corlib] Use Latin1Encoding from referencesource
* mono/mono@4c4d3dcdc5 [I18N] Remove commented code from ucm2cp.c
* mono/mono@73eed5d415 [I18N] Fix wrong charIndex in encoder fallback
* mono/mono@8593149b0b [build] Add code coverage mode (#5789)
* mono/mono@606f40e708 [corlib] Fix SRE.SaveTest error during teardown on Windows
* mono/mono@66f11a1699 Merge pull request #5715 from BrzVlad/fix-alpine-context
* mono/mono@dd1a39dbc6 [amd64] Get xmm registers only when on glibc
* mono/mono@c89a3e55b7 [Mono.Posix] Use TestHelper code from monodroid repo (#5793)
* mono/mono@a1cc4dfedb Merge pull request #5788 from BrzVlad/fix-handle-track-sp
* mono/mono@23d2615f3d Merge pull request #5782 from YuriyGS/bug60115
* mono/mono@3a8e4fcfd4 Merge pull request #5781 from lateralusX/lateralusX/fix-thread-suspend-windows
* mono/mono@d4b2024871 [coop handles] Add comment to prevent hard to debug bugs
* mono/mono@69b9f11b6f [coop handles] Fix monotonic handle check race with stw in mono_handle_new
* mono/mono@1f1edce576 [coop handles] Add log entry about successor handle
* mono/mono@dc2d1c291f [coop handles] Fix monotonic check
* mono/mono@23d2ee726d Merge pull request #5753 from alexrp/wsl-fixes
* mono/mono@1dcaf8fddc Added validation on acceptable date interval when update SelectionRange property. Fixed loss of focus when the user presses the arrow buttons and shift.
* mono/mono@efdf035cfb [arm64] use DMB ISH barrier instead of undefined barrier option
* mono/mono@8dead2a644 [arm64] update definitions for barrier option of DMB
* mono/mono@959eb46e17 [mono-context] Work around a WSL bug when fetching XMM registers.
* mono/mono@d73e8be1de [mcs] Fixes parsing tuple name inside generic type in method header block
* mono/mono@f53ce8e180 Fix random failures in sgen stress tests on Windows due to `mono_thread_is_gc_unsafe_mode assert.
* mono/mono@8eb2c02d7e [acceptance-tests] Reenable ms-test-suite test after Mono bug was fixed (#5776)
* mono/mono@1c4d741a02 [corlib/Test] Check for "Israel Standard Time" zone on Windows.
* mono/mono@ce19b84529 [corlib] Remove a broad try/catch.
* mono/mono@b86c084cbc [corlib] Use full years for transition rule start/end ranges.
* mono/mono@6d4821b282 fix formatting issues
* mono/mono@55fb7bcda1 fix bug-60031 Thread doesn't throw ThreadStateException when it should
* mono/mono@308ce3f5c3 [tests] Remove test from runtime-invoke.cs
* mono/mono@7a452797f1 [tests] Re-enable appdomain-thread-abort.exe (#5736)
* mono/mono@db8183c9d8 [debugger] Fix LineNumbers test (#5744)
* mono/mono@43757d67ef [msvc] Fix MONO_CORLIB_VERSION to match configure.ac (#5770)
* mono/mono@81f7d591d7 Merge pull request #5741 from alexischr/bug-60028
* mono/mono@663754bf46 [mini helpers] fix disassembly on aarch64
* mono/mono@4fe87bd820 [corlib] Adds more tests
* mono/mono@03474ba9e2 Fixed unhandled exceptions in EndPointListener.cs (#5724)
* mono/mono@abd4a6a57b Merge pull request #5746 from kumpera/fix_56194
* mono/mono@286aa03847 [interp] remove wrong checks, as cee_mkrefany and cee_refanyval only take one argument on the stack
* mono/mono@d8bd874fe4 [interp] assume `this' always to be platform pointer size
* mono/mono@49b29bfce8 [interp] flag mint_box instruction if value type stack should be popped too
* mono/mono@1f580e17b8 [interp] bail out on __arglist and propagate MonoError properly in transformer
* mono/mono@3468d54fbb [interp] set stack type properly for ldelem_vt
* mono/mono@b05f478376 [interp] add i1, i2 & r8 support for CEE_STELEM
* mono/mono@34592c5233 [interp] resolve generic types properly in mint_box, mint_ldobj and mint_cpobj
* mono/mono@6c60d2fce0 [interp] pass field instead of pre-calculated size for ld*fld.vt
* mono/mono@373ebd547d [tramps] add missing fp reg and check for the future
* mono/mono@fa92fa86c2 [interp] fix offsets in switch insn dump (only affects debug output)
* mono/mono@3a8cb50b07 [interp] fix compiler warning
* mono/mono@ed10891d9b [interp] replace printf with g_print
* mono/mono@d071235ffa [lldb] update expression in script
* mono/mono@16a67c6f6e Merge pull request #5689 from lateralusX/lateralusX/windows-native-unwind-codeview-support
* mono/mono@e47b1865c2 [runtime] Allow throwing pending exceptions from protected wrappers.
* mono/mono@0ae4504681 [runtime] Remove a mono_error_raise_exception () call from mono_remoting_wrapper (), its not needed since mono_remoting_wrapper () is called through a wrapper.
* mono/mono@12ca539f85 [jit] Call mono_llvm_raise_exception () directly from a bitcode jit icall. (#5752)
* mono/mono@42816aaa92 [interp] fix offset calculation for exvar slots in locals
* mono/mono@ad4ed79c9a [test] Add Type.GetType("", ...) tests
* mono/mono@0c61eb1b12 [reflection] Throw TLE for Type.GetType("", true) (Fixes #59664)
* mono/mono@e004f1ed5e [reflection] Use MonoError for mono_reflection_parse_type_checked
* mono/mono@95ab8ab08f [runtime] Ensure the field type is resolved before using it in RuntimeHelpers::InitializeArray. Fixes #56194
* mono/mono@8f324cdfc2 [ASan] introduce MONO_NO_SANITIZE_ADDRESS macro and mark sgen pin object scanning function as such
* mono/mono@8cf8b32972 [runtime] Use mono_set_pending_exception () in ves_icall_System_Threading_Thread_Sleep_internal (). (#5748)
* mono/mono@f02e158d3c [runtime] Remove unused mono_gc_out_of_memory () function. (#5750)
* mono/mono@4718035ee6 [mcs] Adds workaround for compiled enum types used as fields of other types. Fixes #59080
* mono/mono@1c9cf1f1c0 [interp] fix LMF popping during exception handling
* mono/mono@8e9c90b37e [interp] remove InterpMethod entry in hash table on free_method callback
* mono/mono@428d0606ab [System.Windows.Forms] Proper operation order. Fixes #59393. (#5734)
* mono/mono@344a3ec4e1 [interp] use GC aware memcpy for storing value types to fields
* mono/mono@75415afa76 [bcl] Fix csi to work on Mono (#5737)
* mono/mono@c4bee6af4d Merge pull request #5726 from alexrp/master
* mono/mono@8e9ae0cb07 [w32socket] Ignore errors for IP_MTU_DISCOVER on WSL.
* mono/mono@15c0640201 Merge pull request #5714 from alexischr/update_bockbuild
* mono/mono@4058c2be43 [utils] Add check for ANDROID_UNIFIED_HEADERS to mono-compiler.h (#5742)
* mono/mono@d2e60f48b6 [msvc] Update csproj files (#5745)
* mono/mono@c9fc371e31 [corlib] Use temp directory for assemblies in SaveTest.Save() (#5727)
* mono/mono@64b4a63a87 [corlib] Throw exception on using disposed Timer object. Fixes #60028
* mono/mono@90a68e6591 [corlib] Fixes make dist (#5735)
* mono/mono@aef03761fa Updated with review feedback.
* mono/mono@70abfb795a [profiler] Clean up the makefile and address some issues with it.
* mono/mono@56b3c007f4 [runtime] Don't insta-fail when a faulty COM type is encountered. (#5616)
* mono/mono@9eed0cb99e Update Bockbuild
* mono/mono@e77153a623 Adding basic codeview support on Windows x64 full AOT builds.
* mono/mono@925c2dc632 Adding native unwind info support in Windows x64 full AOT builds.
* mono/mono@72c86fe6cc [corlib] Makes GetReferencedAssemblies test more reliable
* mono/mono@f0ce7bc289 Merge pull request #5327 from marek-safar/corefx-bump
* mono/mono@410bb8a57e [runtime] Fix Empty generic enumerator equality
* mono/mono@f165a0dc3f Bump API snapshot submodule
* mono/mono@74a87af7f5 [appletls] Trust SecTrustResult.Proceed as well. Fixes #58411.
* mono/mono@a984f20e23 Initial set of Ward sgen annotations (#5705)
* mono/mono@411a37af27 Bump corefx
* mono/mono@3e9d7d6e9c [mcs] Fixes codegen for pattern probing with value-type variables
* mono/mono@caa9ed689f [aot] Don't error out if a method fails to JIT in full-aot mode. This was a regression caused by 9302c31f81abd2f5bbf9a8ddd27993e1ece55db2. Fixes #59832. (#5686)
* mono/mono@baac94e4b7 [runtime] Coverage profiler fixes (#5698)
* mono/mono@44e0631618 [corlib] Fixes array enumerator to match .net behaviour
* mono/mono@012f861023 [jit] In native-to-managed wrappers, emit the initlocals code for vtypes after the code for CEE_JIT_ATTACH, since the init code can make calls to methods like memset () which can go through the trampoline code. Fixes #59182. (#5678)
* mono/mono@b2a11ac756 Add new profile for monodroid tools (#5699)
* mono/mono@f77270c633 [monodroid] Fix Mono.Posix tests build (#5697)
* mono/mono@135dbb9c6d [mcs] Allows shadowing of probing pattern variables
* mono/mono@b683b3dc74 [System] Ignore FtpWebRequestTest.DownloadFile2_v6 test when IPv6 isn't available (#5695)
* mono/mono@dbf70d1083 Merge pull request #5693 from lateralusX/lateralusX/disable-stack-overflow-win-x64
* mono/mono@f0f4a22ae1 [coverage-profiler] Collect coverage data at IL seq point locations. (#5667)
* mono/mono@f86145e558 Merge pull request #5664 from lateralusX/lateralusX/mkbundle-windows-toolchains
* mono/mono@d7c22488d7 Bump version to 5.9.0 (#5692)
* mono/mono@ef7a4c0620 Prepare Mono for Android NDK with unified headers (#5680)
* mono/mono@4f673eac74 [System.Net.Http] Updates range check from 3741d16503a973a99c724bdab9a255a5f07a3637
* mono/mono@66205238fc Merge pull request #5636 from BrzVlad/fix-xmm-scan
* mono/mono@1004d95b6b [mcs] Implements C# 7.2 readonly structs
* mono/mono@4db06151be Disable none-working stack overflow implementation on Windows x64 full AOT.
* mono/mono@1bcf21e048 [w32file] Push win32 specific error to win32 specific implementation (#5665)
* mono/mono@abcca89bd4 [mcs] Adds minor langversion support
* mono/mono@56247cecbd Merge pull request #5656 from lateralusX/lateralusX/dynamic-static-windows-build
* mono/mono@3d47b20c62 [interp] fix using conv.u with string
* mono/mono@3aeeae6230 [jit] Fix using conv.u with string.
* mono/mono@adaf7fd65b [mcs] Allow properties and indexers of by-ref values to be set without setter
* mono/mono@9369ed6e23 [runtime] Store implmap_idx as a guint32 to avoid overflows if the implmap table has more than 64k rows. Fixes #59881.
* mono/mono@199d4da9ac Merged changes in master libmonoruntime into PR.
* mono/mono@216b92db17 Updated with review feedback.
* mono/mono@0f3ca07b42 Update msvc README file.
* mono/mono@8ae01a69f2 Add missing dependency for libmini.
* mono/mono@4c144cfacf Align libgc vcxproj with makefile.
* mono/mono@1091bd94fd Align libgcmonosgen vcxproj with makefile.
* mono/mono@8d22c47199 Align eglib vcxproj with makefile.
* mono/mono@975d820a75 Align libmonoruntime vcxproj with makefile.
* mono/mono@df03eb3fac Align libmonoutils vcxproj with makefile.
* mono/mono@6cb544f91d Fix libmini targets and filters.
* mono/mono@17392d380c Added labels to eglib and libmonoutils.
* mono/mono@05a3f528f7 Fix libmonoruntime targets and filters.
* mono/mono@fde8978893 Fix libmonoutils targets and filters.
* mono/mono@43e9ddc1fc Fix eglib targets and filters.
* mono/mono@52418d713f Drop use of def files for x86, x64 mono-2.0-sgen|boehm.dll Windows build.
* mono/mono@52e98abd6e Restructure of mono.sln and build properties to better fix static/dynamic library support.
* mono/mono@92576e31d2 Merge all static runtime libs into libmono-static.
* mono/mono@233bbcaaa3 Review feedback + drop VS2013 support.
* mono/mono@098e88f3a8 Merge pull request #5668 from kumpera/wasm-work-p4
* mono/mono@02a9ceaebb [ci] Small improvements for run-jenkins and collect-coverage. (#5669)
* mono/mono@edbc5c2334 Merge pull request #5675 from mono/glib-debug-symbols
* mono/mono@7751545573 Bump mono-extensions to fix build break (#5677)
* mono/mono@d8be089964 Bump NuGet.BuildTasks to get new updates and switch to `dev` branch (#5566)
* mono/mono@f99b88b812 Add glib to the list of packages with debugging symbols.
* mono/mono@bfc76bafbf [profiler] log profiler: limit method instrumentation to selected methods (#5517)
* mono/mono@30cddad5fb [jit] Fix the saving of the 'cfg->ret_var_set' flag when inlining, it was set to FALSE before it was saved, causing invalid code to be generated in some cases when doing nested inlining. Fixes #59608. (#5654)
* mono/mono@34866ac4c2 [mcs] Initial by ref returns and variables support
* mono/mono@56779410e8 Major improvement of Visual Studio toolchain and Windows SDK support in mkbundle.
* mono/mono@fe1eeb0724 [wasm] We can't free memory in wasm as it uses the malloc mmap backend.
* mono/mono@22187e8df1 [wasm] Add new missing signature.
* mono/mono@6f20e306e0 [wasm] Disable test that doesn't work with WASM
* mono/mono@f84533a8de [amd64] Save missing register
* mono/mono@c334db5e2c [arm64] Scan simd registers on apple
* mono/mono@ef8bc5028e [runtime] Avoid indirection when building MonoContext on darwin
* mono/mono@c889057d64 [arm64] Add the full neon regs to the context
* mono/mono@161c807083 [amd64] Add XMM registers to MonoContext on linux

Diff: ce89e4c5fa...4116105b8b

https://bugzilla.xamarin.com/show_bug.cgi?id=40699
https://bugzilla.xamarin.com/show_bug.cgi?id=49308
https://bugzilla.xamarin.com/show_bug.cgi?id=56003
https://bugzilla.xamarin.com/show_bug.cgi?id=56194
https://bugzilla.xamarin.com/show_bug.cgi?id=58400
https://bugzilla.xamarin.com/show_bug.cgi?id=58411
https://bugzilla.xamarin.com/show_bug.cgi?id=59080
https://bugzilla.xamarin.com/show_bug.cgi?id=59182
https://bugzilla.xamarin.com/show_bug.cgi?id=59184
https://bugzilla.xamarin.com/show_bug.cgi?id=59239
https://bugzilla.xamarin.com/show_bug.cgi?id=59393
https://bugzilla.xamarin.com/show_bug.cgi?id=59608
https://bugzilla.xamarin.com/show_bug.cgi?id=59664
https://bugzilla.xamarin.com/show_bug.cgi?id=59832
https://bugzilla.xamarin.com/show_bug.cgi?id=59881
https://bugzilla.xamarin.com/show_bug.cgi?id=59956
https://bugzilla.xamarin.com/show_bug.cgi?id=59967
https://bugzilla.xamarin.com/show_bug.cgi?id=60028
https://bugzilla.xamarin.com/show_bug.cgi?id=60029
https://bugzilla.xamarin.com/show_bug.cgi?id=60175
https://bugzilla.xamarin.com/show_bug.cgi?id=60224
https://bugzilla.xamarin.com/show_bug.cgi?id=60233
https://bugzilla.xamarin.com/show_bug.cgi?id=60255
https://bugzilla.xamarin.com/show_bug.cgi?id=60267
https://bugzilla.xamarin.com/show_bug.cgi?id=60288
https://bugzilla.xamarin.com/show_bug.cgi?id=60422
https://bugzilla.xamarin.com/show_bug.cgi?id=60435
https://bugzilla.xamarin.com/show_bug.cgi?id=60505
https://bugzilla.xamarin.com/show_bug.cgi?id=60539
https://bugzilla.xamarin.com/show_bug.cgi?id=60545
https://bugzilla.xamarin.com/show_bug.cgi?id=60634
https://bugzilla.xamarin.com/show_bug.cgi?id=60680
https://bugzilla.xamarin.com/show_bug.cgi?id=60771
https://bugzilla.xamarin.com/show_bug.cgi?id=60860

* [integration] bump maccore

* Test fix for issue with stateful script loading

* Install only selected files to mimic Mono NO_INSTALL flag

* Exclude lines with comments from profile source files

* Bump 2017-12 mono

* Bump mono

* Bump Mono

* Update linker sources location

* More linker updates

* More build fixes

* Bump to mono:2018-02

* [tests] reflect category rename of NotWorkingInterpreter to NotWorkingLinqInterpreter

see 746a3d0214

* [tests] update regular expression for extracting mono version

* version specifier can have up to four tuples
* single tuples can be more than a single digit

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@01e35bc383 ignore LocalId test on XAMMAC_4_5 too
* mono/mono@4e374e8cea [2018-02] [reference-assemblies] Fix public key for some newer v4.7.1 facades (#6865)
* mono/mono@94a8a589c8 Add stubs for Interop.NetSecurityNative
* mono/mono@fd7c5cdac6 [2018-02] [System.Data] Add missing API (fixes 6767) (#6825)
* mono/mono@942dd07c65 [ci] Add setting artifacts.json status
* mono/mono@f403697225 [ci] Add Windows .msi PR build (#6815)
* mono/mono@20ada1bc3b [2018-02] [runtime] Add a 'frame_addr' field to MonoStackFrameInfo, which is equal to either interp_frame or ctx->sp. (#6813)

Diff: 3320f45d98...01e35bc383

* Fix debug spew

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@f3c1fcd7c9 [System]: Revert my latest WebResponseStream changes. (#6887)
* mono/mono@268f2ac419 Bump bockbuild to get new gtk+ repo location
* mono/mono@ebb26ab546 Bump bockbuild to add gtk# generator fix (#6883)

Diff: 01e35bc383...f3c1fcd7c9

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@7126712f86 [System]: Set NetworkStream.ReadTimeout in WebConnection.InitConnection(). (#6898)
* mono/mono@07a5c686e0 Handle arguments of type ArgVtypeOnStack in the dyn call code. Part of the fix for #59184.
* mono/mono@bc64a17db8 [bcl] Fix more assembly identity mismatches (#6870)

Diff: f3c1fcd7c9...7126712f86

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

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@e9fa8a306d WebConnection.Connect() needs to probe all IP addresses.

Diff: 7126712f86...e9fa8a306d

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@93705443b6 bump nunit-lite
* mono/mono@5f626db882 [debugger] disable StepOutAsync test because it's flaky
* mono/mono@6cb693c4b5 Bug 60088 - Assertion at ../../../../external/mono/mono/mini/debugger-agent.c:4765, condition `array->len == 1' not met Problem was that I didn't consider `async void` method when adding that assert (#7105)
* mono/mono@e96f9fbb4a [2018-02] [sdks] Fix for XA integration (#7104)
* mono/mono@6559a504ed [ci] Disable monodoc tests on Windows for now
* mono/mono@c62864c98e Disable some PngCodecTest that have trouble on CI right now
* mono/mono@c5accf5ebc Bump aot file format version because of 7cac757e60cd61aa070f7e0fffca225364f58c0c. (#7082)
* mono/mono@470256aca5 Add denied assembly versions from previous ms extensions nugets
* mono/mono@f0f76abc30 Emit the weak field indexes table using the MONO_AOT_TABLE code, so it works with separate aot data files/bitcode.
* mono/mono@e7e28f4b9d Pass null-terminated string for logging
* mono/mono@00dec1f0c0 [2018-02] Fix ios sdk. (#7027)
* mono/mono@e0c46d9114 Bump mono/NUnitLite (#7006)
* mono/mono@ba542c0b1e [2018-02] Update F# to 4.1.33
* mono/mono@72aea0056b Revert mkbundle defaulting behavior made in ca8b8bd346
* mono/mono@0dfa4f85a9 Unlock loader lock on error paths
* mono/mono@d956447d56 [System.Data] Add missing api
* mono/mono@4aa717dc82 [2018-02] [runtime] Make icall tables loadable. (#6944)
* mono/mono@d8e28e14a5 Merge pull request #6952 from monojenkins/backport-pr-6890-to-2018-02
* mono/mono@176f127c1b disable test_42_arm64_dyncall_vtypebyval
* mono/mono@764b03fcab nuget-hash-extractor: Add msbuild extensions nuget to list of nugets to
* mono/mono@1df45be2e9 nuget-hash-extractor: Add support for handling nuget with multiple

Diff: e9fa8a306d...93705443b6

* Bump mono min version to avoid nuget restore issue

https://github.com/mono/mono/issues/6788

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@b242e82ba4 Add ldflags for bitcode (#7144)
* mono/mono@9c9d5d9e22 Fix the Android xattr check to not disable it on all other platforms. (#7146)
* mono/mono@f8ed9bcd12 [2018-02] [corlib] Fix RuntimeFeatureTest.NoNewFeaturesAdded on mobile (#7151)
* mono/mono@578cfcd146 [2018-02] [sdks] Fix for XA integration (#7109)

Diff: 93705443b6...b242e82ba4

* Bump Touch.Unit

Commit list for spouliot/Touch.Unit:

* spouliot/Touch.Unit@4ac4e32 [TouchRunner] do not use FinallyDelegate in Runner, because it requires remoting API to be available (#49)

Diff: b5b227e80b...4ac4e32500

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@daace66339 [2018-02] [xbuild] add property that is available in msbuild (#7202)
* mono/mono@fd18515516 Bump bockbuild for https://github.com/mono/bockbuild/pull/62 (#7206)
* mono/mono@c68cc6a4f4 Emit the same instances in hybrid aot mode as in full aot mode.
* mono/mono@4169af750b Disable partial sharing during JITting, its only been tested in full aot mode, and doesn't seem to work with JITted methods. Fixes https://github.com/mono/mono/issues/7085.
* mono/mono@ed22f9fa84 Add hybrid aot tests.
* mono/mono@d389ff9ff6 Remove reflection calls for value has to be set
* mono/mono@d1f461c5a3 Expand "ignore" functionality (#7154) (#7176)
* mono/mono@4e29f2ef9a [jit] Handle more cases for gsharedvt constrained calls.

Diff: b242e82ba4...daace66339

* bump system mono to include xbuild workaround for fsharp

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@33b47292c3 bump nunitlite
* mono/mono@df0a29e779 Merge mxe-Win32 and mxe-Win64 targets since we are building both in XA anyway
* mono/mono@6ccf73c8c8 Pass only the imt argument if both imt and rgctx arguments are required.
* mono/mono@d6b6fc61f1 Bump bockbuild to get curl error changes
* mono/mono@8249522f23 Fix the test name.
* mono/mono@2623bc3045 Magic interfaces requires the complex stelemref to handle arrays. Fixes gh #6266
* mono/mono@3be3714b6e add another signature for interp_in wrappers

Diff: daace66339...33b47292c3

* unbump touch.unit

* bump touch.unit

Commit list for spouliot/Touch.Unit:

* spouliot/Touch.Unit@1c41c75 Revert "[TouchRunner] do not use FinallyDelegate in Runner, because it requires remoting API to be available (#49)" (#50)
* spouliot/Touch.Unit@4ac4e32 [TouchRunner] do not use FinallyDelegate in Runner, because it requires remoting API to be available (#49)

Diff: b5b227e80b...1c41c75983

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@769bf9ef25 nuget-hash-extractor: Add msbuild extensions nuget version from vs15.6 msbuild branch
* mono/mono@878a54030a nuget-hash-extractor: Change the nuget repo name to use for
* mono/mono@a849f9a6e8 Fix path clobbering when trying to shadow copy siblings
* mono/mono@d9aa6f4083 Use attribute(deprecated) instead of attribute(error). (#7369)
* mono/mono@c0b76ff9ae Don't throw NotImplementedException in Dispose()
* mono/mono@5cef19dcd2 [2018-02][runtime] Don't assert in mono_class_is_assignable_from on iface gtd (#7290)
* mono/mono@ffe180c47f Make it build.
* mono/mono@c627c1b4b6 Bump linker.
* mono/mono@d0e7df4717 [System]: Enable some System.Net.Requests tests from CoreFX. (#7339)
* mono/mono@28c171a337 [2018-02] [System]: Use new `WebCompletionSource` instead of `TaskCompletionSource`. (#7298)
* mono/mono@0c8f0774ce Merge pull request #7336 from monojenkins/backport-pr-7321-to-2018-02
* mono/mono@6a1b416592 Fix gdb not being used for native stacktraces in some cases
* mono/mono@078760db9b [2018-02] [TermInfo] support new file format terminfo2 introduced with ncurses6.1 (#7308)
* mono/mono@ffc643d10c Fix VirtualMachine.CreateEnumMirror () so it works with types from non-root domains.
* mono/mono@6ed6a1b568 Check if we are exceeding the worker count limit

Diff: 33b47292c3...769bf9ef25

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@fa1ec4ac4d [packaging] Support setting the FULL_VERSION number via env vars (#7414)
* mono/mono@30aadcaa3a [2018-02] [metadata] split IL generation code into seperate compilation units. (#7375)
* mono/mono@214321dee5 [msbuild] Bump to track msbuild's mono-2018-02 branch (#7395)
* mono/mono@413f2fb976 Reenable HttpRequestIgnoreBadCookies in monotouch. (#7391)
* mono/mono@020ac2de89 Problem building on Arch linux #7200 https://github.com/mono/mono/issues/7200 Three styles: 1. LIBS="$LIBS -lfoo" -- common and probably works 2. LIBS+="-lfoo" -- was here and does not work 3. LIBS+=" -lfoo" -- should work (#7383)

Diff: 769bf9ef25...fa1ec4ac4d

* Update linker tests using reflection not to be caught by linker reflection heuristic

* More linker reflection checks updates

* Fixes Bug59015 test to check for method is was intented to

* [mmptest] fix linker test in link-safe-1

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@279d7e230f [2018-02] [threads] Fix race between abort socket syscall and thread shutdown (#7521)
* mono/mono@2ce1d5f3d5 Comment/stub out some unused icalls to prevent problems with AOT.
* mono/mono@668baf1915 [acceptance-tests] Actually disable gcsuppressfinalize.exe test
* mono/mono@2201952d9a WebRequestStream now throws correct exception on cancellation (#7074).
* mono/mono@4d3e9d53b2 Fix resolution of interfaces in classes implementing IEnumerator. Fixes #59400
* mono/mono@2476d2ac06 Move the check for open constructed types later in mono_jit_compile_method_with_opt (), this function can receive gshared methods in llvmonly mode. (#7504)
* mono/mono@91fe1eb5f5 Fix generated file when passing --bundled-header (#7510)
* mono/mono@bb0c123e74 Use runtime template for iOS
* mono/mono@e965e1647d Use runtime template for Android
* mono/mono@a652297384 Create common runtime compilation template
* mono/mono@685d39238a Have RELEASE be empty when CONFIGURATION != 'release'
* mono/mono@3648ace2b9 Move common targets
* mono/mono@b62bfdcb55 An array is not an IEnumerator`1
* mono/mono@9f2841c3a0 An array is not an IEnumerator`1
* mono/mono@6f90188e9f Add IEnumerator`1 to MonoDefaults struct
* mono/mono@84027bddaa Remove compiler config sections for types which cannot be instantiated
* mono/mono@66f19a974a Swap Close/Dispose calls so that the receiver_thread_main loop will be properly interrupted
* mono/mono@99b7f59ddc [2018-02] Fix for gcc 4.4; nominal support for older. (#7435)
* mono/mono@f28abdbebd Fixes decoding of CMS/PKCS #7 messages with an explicit cryptographic object identifier
* mono/mono@2dc56b5a60 [2018-02] [corlib] Ignore TimeZoneTest.TestCtors on iOS under certain conditions due to an Apple bug. (#7428)
* mono/mono@58d02a9603 [acceptance-tests] Disable gcsuppressfinalize.exe test that started failing

Diff: fa1ec4ac4d...279d7e230f

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

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@ed56e90aca [2018-02] [Facades] Add missing Facades that exist in .NET 4.7.1 (#7551)
* mono/mono@57e18b15d0 [sgen] Fix the clearing of bits in the gc descriptor bitmap when using weak fields. Fixes #7378.

Diff: 279d7e230f...ed56e90aca

* [linker] update facades list for .NET 4.7.1

see https://github.com/mono/mono/issues/7573

* Force libMonoPosixHelper usage in test to work around mono linker improvements

- https://github.com/mono/mono/issues/7516
- These tests will be refactored \ improved in https://github.com/xamarin/xamarin-macios/issues/3713

* [msbuild] fix creation ouf output dependency (#3747)

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@d67d75a4f3 Disable delegate-15.exe in the full-aot profile.
* mono/mono@6036b45bce Avoid calling mono_class_vtable () for open constructed types.
* mono/mono@9136f4c1a0 only target macOS, HOST_DARWIN includes iOS etc. as well
* mono/mono@abb82546d7 [2018-02] [Facades] Make System.Net.Http.Rtc.dll a net_4_x only facade (#7595)
* mono/mono@6af13f6e83 Add icall to configure MERP options / enable it
* mono/mono@c684567bd7 Add optional Microsoft Telemetry unmanaged dumper
* mono/mono@4ab5e8a495 Update source file location from commit d4816ef1abcfc5b3dea41a87fe5a7a4c4a3781ed

Diff: ed56e90aca...d67d75a4f3

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@3577465fcd add LL suffix to constant in order to prevent overflowing on 32bit systems
* mono/mono@7d9e106c03 1000ns = 1us and 1us = 10ticks
* mono/mono@3931767dca reduce compiler warnings
* mono/mono@deb3474e7c add regression test for github issue 7646
* mono/mono@27c7a4b01e use utimes if available in order to set subsecond information on access and write time
* mono/mono@da5b39d785 factor setfiletime
* mono/mono@7f69ff87b5 use CONVERT_BASE in more places
* mono/mono@e33bf27c9a replace SECMULT with TICKS_PER_SECOND
* mono/mono@79030a3284 remove unused mono_w32file_get_times ()
* mono/mono@e74d4a6e31 Merge pull request #7686 from mono/backport-gh-7584
* mono/mono@c2fe39f13e Revert "Replace mono_msec_boottime() with CoreCLR implementation. Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=58413"
* mono/mono@0d8de253cb [System.Net] Replace use of obsolete `SupportsIPv6` property.
* mono/mono@e9c512092d Increase the buffer size in emit_exception_debug_info ().
* mono/mono@08a7043b66 [2018-02] [System]: Introduce `WebCompletionSource\u003cT\u003e` and use it in `WebOperation`. (#7641)
* mono/mono@cb89a1575c Replace mono_msec_boottime() with CoreCLR implementation. Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=58413
* mono/mono@1a0508a58c Handle multiple segments in IsolatedStored::GetFileNames. Fixes bxc #11771

Diff: d67d75a4f3...3577465fcd

* Bump system mono

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@c17d8c6dcd remove WildcardConnect () on WatchOS
* mono/mono@e29f146ab3 [2018-02] [sgen] Use current nursery size when computing allowance (#7648)
* mono/mono@535bfc5d84 Add csc-dim as a prototype if default interface implementation
* mono/mono@5b66de0bf0 [2018-02] [sdks] Fix concurrent building of MonoAotOffsetsDumper.exe + Simplify building of support library (#7688)
* mono/mono@a6c7b9eca4 [msbuild] Bump msbuild to pick up fix for issue #7184 (#7666)

Diff: 3577465fcd...c17d8c6dcd

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@67a2468db9 support increment and decrement of nint/nuint (#7790)
* mono/mono@da0e172ae5 improve error message and add another interp_in signature (#7789)
* mono/mono@1c9d8aad07 [sdks] Fix the ios sdk build. (#7801) (#7824)
* mono/mono@c6fc176f5c Fix Android build for toolchain (#7818)
* mono/mono@c9bf7a3878 Disable the interpreter on ios device builds. (#7795)
* mono/mono@d37075a949 [System] Disable a test file to resolve compilation error
* mono/mono@42fc0bd51f Bump corefx to bring a fix for #7696
* mono/mono@2487301faf Fix Android build for mxe (#7782)
* mono/mono@0d6be4da5e [sdks] Fix Android build on Linux (#7777)
* mono/mono@ebbed2bb87 Revert "Swap Close/Dispose calls so that the receiver_thread_main loop will be properly interrupted (#7390)" (#7751)
* mono/mono@e5bad88ebb Fix Android build (#7769)
* mono/mono@238c21cf77 Fix a race condition that was exposed by #7358 (see #7668).
* mono/mono@2fbd5a16a3 [runtime] Fix file handle leak with dedup+aot (#7721)
* mono/mono@a13c12ac99 [2018-02] [loader] Don't load framework Facade assemblies that are older than expected. (#7708)
* mono/mono@bdf405fae4 Merge pull request #7726 from mono/backport-new-boottime-2018-02
* mono/mono@ce612bb49e Fix partially shared constrained calls in llvmonly mode.
* mono/mono@0a3d40ac60 Avoid aot-ing the bcl libs twice in make fullaotcheck/llvmonlycheck.
* mono/mono@07d5a031d4 [runtime] Don't use clock_gettime on WatchOS and tvOS.
* mono/mono@ff546b9d8b [runtime] Don't use clock_gettime in MacOS.
* mono/mono@9922d1af20 [runtime] Fix mono_msec_boottime () so it compiles on older ios versions, clock_gettime () is only available from ios 10. (#7671)
* mono/mono@875240538e [mono-time] Replace mono_msec_boottime() with CoreCLR implementation. Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=58413

Diff: c17d8c6dcd...67a2468db9

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@b250b4a657 [2018-02] [sdk] sync ios and android changes from master into `2018-02` (#7831)
* mono/mono@77fc4cfa2e Remove suspicious mono_gchandle_free
* mono/mono@3984508a04 [icall] remove DISABLE_PROCESS_HANDLING (#7827)

Diff: 67a2468db9...b250b4a657

* Bump to mono:2018-02

Commit list for mono/mono:

* mono/mono@dcdd956e1b [perfcounters] fix alignment issue on 32bit
* mono/mono@811e3b4dcd [sdks] Fix LLVM build for XA (#7919)
* mono/mono@25aba4e86e [2018-02] [sdks] Fix LLVM build on Linux for XA + Fix MXE usage on non-Darwin platforms (#7912)
* mono/mono@ae7f365c06 [sdks] Fix usage of MXE for XA (#7898)
* mono/mono@cda8574a88 [jit] Add signature checking for CALLI. (#7880)
* mono/mono@a6b0e1ccbe [2018-02] [sdks] Pass LLVM_SRC from XA to use `xamarin-android/external/llvm` + Pass IGNORE_PACKAGE_MXE from XA + Only checkout specific MXE and LLVM commit when cloning (#7895)
* mono/mono@7ee378c904 [sdks] Pass MXE_SRC from XA to use `xamarin-android/external/mxe` (#7890)
* mono/mono@511ca9f507 Whitelist illinkanalyzer in macOS package (#7862)
* mono/mono@88b5266376 Merge pull request #7851 from monojenkins/backport-pr-7849-to-2018-02
* mono/mono@4aa9fd41b8 [msbuild] Bump to pick up updates (#7846)
* mono/mono@4bf541a969 [System] Makes TLS providers linker friendly
* mono/mono@6c324b91b2 [corlib] Restores ConcurrentDictionary serialization support.

Diff: b250b4a657...dcdd956e1b

* Bump to mono/2018-04/59e6eb29

Commit list for mono/mono:

* mono/mono@59e6eb29e6 [2018-04] [Facades] Add System.Memory facade to mobile profiles (#7968)
* mono/mono@5053d17e50 Bump version to 5.14 (#7954)
* mono/mono@9cd9e3b0a1 [ppc] use ucontext_t
* mono/mono@90b49aa3ae Merge pull request #7946 from kumpera/wasm_fix_a_few_issues
* mono/mono@21a9412a67 [sdb] Fix --enable-minimal=soft_debug build. Fixes #7920. (#7945)
* mono/mono@95276e9ddb Merge pull request #7943 from filipnavara/corefx-sd-tests-1
* mono/mono@cdea795c0e [wasm] Make RuntimeInformation properly detect WebAssembly.
* mono/mono@d8648776cc [wasm] Bump corert to pick fix for TaskCreationOptions.LongRunning. Fixes #7864.
* mono/mono@106ef365e3 [wasm] Disable the degraded alloc warning under wasm. Fixes #7661
* mono/mono@2bf9a42fd3 [wasm] Fix the build.
* mono/mono@5bdb87b6a6 [wasm] emcc has a broken clock_getime. Disable its usage.
* mono/mono@a810739246 Include CoreFX GraphicsPath and Region tests.
* mono/mono@4723e6603e Merge pull request #7915 from alexischr/fix-gh-7568
* mono/mono@2b4208feda [System.Windows.Forms] Set NotifyIcon.Icon in test to prevent warning
* mono/mono@a914dbf173 [System.Windows.Forms] Dispose forms opened during two tests
* mono/mono@fcd52894d9 [System.Drawing] Remove failing jpeg flags tests (#7931)
* mono/mono@254013b0fd [runtime] Fix class visibility check for protected nested classes. (#7907)
* mono/mono@ebef3ec4b1 [msvc] Update csproj files (#7929)
* mono/mono@2cbd1706dc [System.Drawing] Enable corefx xunit tests (#7924)
* mono/mono@4d78aaf7b4 [genproj] When using fallback profile selection don't build the projects that were missing a profile (#7926)
* mono/mono@1931cb1dcb [Tests] Disable hijacking.exe and Jittailcall2.exe tailcall tests. (#7922)
* mono/mono@938415c6d3 [test-runner] Don't output test result xml when no tests are run
* mono/mono@a5a496695a Disable building btls/ and support/ on the bcl build, they are not needed. (#7921)
* mono/mono@2e0182b5c0 Implement Field SetValueDirect on non-struct targets. Add test case from roslyn issue 19038. (#7866)
* mono/mono@88cab36c20 [sdks] add Make.config to ignore file (#7901)
* mono/mono@5c839fc109 Bump msbuild to track xplat-master (#7900)
* mono/mono@f83fbbd9b8 [sdks] Fix LLVM build for XA (#7917)
* mono/mono@a36d08a55a [perfcounters] fix alignment issue on 32bit
* mono/mono@1e1893d683 [System.IO] Don't throw exception when FileSystemWatcher is disposed while the backend is still trying to use it
* mono/mono@a1751d91c8 Revert "Disable some flaky tests."
* mono/mono@2c14b1f82c Revert "Disable a flaky test."
* mono/mono@86df754848 Revert "Disable bug-80307.exe"
* mono/mono@60707875d5 Revert "[sdks] Disable btls and support/ on the bcl build, they are not needed. (#7892)" (#7904)
* mono/mono@6f0fba8961 [Tailcall] Bring coreclr tests for tail calls to Mono source tree (#7204)
* mono/mono@765ea25772 [sdks] Fix LLVM build on Linux for XA + Fix MXE usage on non-Darwin platforms (#7910)
* mono/mono@1d36e15392 [msvc] Update csproj files
* mono/mono@81a781bb02 add some OpenBSD patches (#7699)
* mono/mono@792196320f [sdks] Disable btls and support/ on the bcl build, they are not needed. (#7892)
* mono/mono@573e460e97 Fix tarball build
* mono/mono@7ec2423535 [packaging] Bundle the msvc compiled monograph.exe on Windows
* mono/mono@3dad276e2d Bump api-snapshot
* mono/mono@77b2db73aa Add BindingFlags.DoNotWrapExceptions (#7863)
* mono/mono@9ff460b004 [sdks] Disable wasm on the ios sdk lane. (#7894)
* mono/mono@e70a872c53 [sdks] Fix usage of MXE for XA (#7897)
* mono/mono@5841ffff03 [System.Windows.Forms] Ignore non-visible controls when computing ScrollableControl canvas size (#4247)
* mono/mono@407e254643 [sdks] Pass LLVM_SRC from XA to use `xamarin-android/external/llvm` + Pass IGNORE_PACKAGE_MXE from XA + Only checkout specific MXE and LLVM commit when cloning (#7893)
* mono/mono@6c901dbfc5 [sdks] Pass MXE_SRC from XA to use `xamarin-android/external/mxe` (#7888)
* mono/mono@ff40ceff38 check for iconv only once (#7873)
* mono/mono@e3e1fe1c16 [corlib] Moves DynamicMethod to mscorlib to work better with wasm (#7875)
* mono/mono@ada6edbad8 [bcl] Fix the compilation of System tests in the mobile profile. (#7882)
* mono/mono@2f66873ab2 [msvc] Update csproj files (#7811)
* mono/mono@753cc874f6 [jit] Add signature checking for CALLI. (#7832)
* mono/mono@ab62d30edb [genproj] Move obj to common folder and remove unnecessary properties (#7870)
* mono/mono@8c86a805ff [mcs] Updates common array bounds unification to use universal type comparer
* mono/mono@b42086d450 Use __PASE__ for things i needs that AIX doesn't (#7858)
* mono/mono@f00eba8a7c Whitelist illinkanalyzer in macOS package (#7861)
* mono/mono@4a247e7ed9 Merge pull request #7740 from alexischr/corefx-unknownunix-fsw
* mono/mono@03a153c7b3 Bump API snapshot submodule
* mono/mono@e6f90edfcd [System]: Disable the System.Net.ServicePoint tests from corefx.
* mono/mono@0f9b7f730f mono_perfcounter_counter_names returns incorrect names, and restructure slightly for clarity (#6355)
* mono/mono@9b36f1452f wcf: fix index of message body parts. Do not use MessageBodyMemberAttribute.Order as index.
* mono/mono@3c8bf90a40 [System.IO] Use CoreFX FileSystemWatcher stub for mobile profile
* mono/mono@6caa9bd881 Disable a flaky FileSystemWatcher test
* mono/mono@7e31c5d11f Merge pull request #7849 from marek-safar/corefx-fixes
* mono/mono@294707cf88 [build] Fixes bootstrap invocation of cil-stringreplacer
* mono/mono@dc1ef2ea3a [runtime] One more MonoClass getter fixup (#7836)
* mono/mono@dc6700a799 [corlib] Restores ConcurrentDictionary serialization support.
* mono/mono@32e6bccc2d [System] Makes TLS providers linker friendly
* mono/mono@554690a64c [build] Update monolite package to support cil-stringreplacer (#7847)
* mono/mono@96e8fa67e2 [bcl] Fix Cscompmgd/I18N.Rare not having any tests (#7842)
* mono/mono@3157302581 Pull in bug 53272 fix
* mono/mono@16d5c31409 [ci] Bundle nunit xml results in a .tar file (#7843)
* mono/mono@5e1acb47f5 [genproj] Deduplication of project references (#7844)
* mono/mono@b20d5ce1e5 [runtime] Rework how the native-to-managed eh callback is called. (#5837)
* mono/mono@2b663424a0 [threads] Remove suspicious mono_gchandle_free
* mono/mono@f66032b7c0 Fix F# build. (#7826)
* mono/mono@e610e443cd Structure field that cannot be marshalled throws exception instead of aborts\n Alllow structure pointer conversion for blittable multi-dimentional arrays (#7794)
* mono/mono@febd5ac535 MonoClass getters mop-up PR (#7806)
* mono/mono@a5099ca2a4 [mini] Use MonoClass getters in method-to-ir.c (#7772)
* mono/mono@2ce121ab7b [sre-save] Remove type_token assignment in mono_image_fill_export_table (#7803)
* mono/mono@2f5077a1fb [sdks] Fix the ios sdk build. (#7801)
* mono/mono@dde9ee5e79 [w32handle] Lower minimum memory usage (2nd attempt) (#7508)
* mono/mono@30903764c2 [sdks] Fix Android build for toolchain (#7817)
* mono/mono@2709d2309e [mini] Use MonoClass getters on non-AMD64 platforms (#7799)
* mono/mono@506fc0b522 [genproj] Deduplication of sources (#7810)
* mono/mono@331f3d9f27 Fix warnings and cleanup style. (#7800)
* mono/mono@954911d3f1 Genproj updates for BCL build in Windows Visual Studio (#7755)
* mono/mono@431c67415c [mini] Use MonoClass getters in aot-compiler.c (#7773)
* mono/mono@76f0193388 [ci] For checked builds, pass -k to make (#7802)
* mono/mono@43d9c4737b Imports FtpWebRequest from CoreFX (#7644)
* mono/mono@bc25029b58 Disable some flaky tests.
* mono/mono@901ccebb0a [sdks] Disable the interpreter on ios device builds. (#7793)
* mono/mono@e3c284c4e3 CodeOwners update (#7798)
* mono/mono@74daf13fb2 Harden JIT job control against cctors deadlocking. (#7423)
* mono/mono@7bb6e59e38 [runtime] Fix lock tracer compilation error (#7767)
* mono/mono@1bdcf19169 [corlib] System.Collections from CoreFX (#7478)
* mono/mono@3aeab61192 [mini] Use MonoClass getters in a few files (#7771)
* mono/mono@158bb416eb [interp] Use MonoClass getters (#7774)
* mono/mono@b06de64bf8 Fallback to listing drives in My Computer using System.IO.DriveInfo.
* mono/mono@b8fdce6c05 [Tailcall] Fix virtual generic methods that F# tests uses. (#7524)
* mono/mono@066ce33825 Add tailcall support & fix floating point ABI (#7695)
* mono/mono@d233bdbf99 [icall] remove DISABLE_PROCESS_HANDLING (#7779)
* mono/mono@7de72fbf3f [interp] support increment and decrement of nint/nuint
* mono/mono@d424774751 [interp] improve error message and add another interp_in signature
* mono/mono@dfabaa5917 Remove incorrect docs (#7784)
* mono/mono@67e995c6e2 [interp] Improve mixed mode execution support, using full-aot+interp as the configuration. (#7764)
* mono/mono@9c63d1bf9d [sdks] Fix Android build for mxe (#7781)
* mono/mono@8a3b4bf2af [sdks] Fix Android build on Linux (#7775)
* mono/mono@95d450660b [interp] move variable decl into ifdef to avoid unused warning (#7763)
* mono/mono@392e1c368c [Tailcall] Proper fix for F# regression, at least some architectures. (#7658)
* mono/mono@45c94b22ab [sdks] Fix Android build (#7768)
* mono/mono@d856789ccd Bump corefx to bring a fix for #7696
* mono/mono@9bc0a49bc7 [runtime] Fix the cross compiler build. (#7754)
* mono/mono@3d2891097a Merge pull request #7748 from lambdageek/fix-gc-descr-object-c
* mono/mono@3283af3449 [msvc] Update csproj files
* mono/mono@3ec9fda371 [System.Core] Guard against embedded NUL in strings for MemoryMappedFiles (#7318)
* mono/mono@6822a57663 Disable a flaky test.
* mono/mono@54e3eccc5d [build] Bump bootstrap mcs dependency for mcs builds to catch up with e6fb82b2c7b4a8f42827f9a952dec0a03ae9c8c9
* mono/mono@99d31278e3 [interp] always set old_frame in interp_entry (#7757)
* mono/mono@c2698519b0 [interp] Allocate ThreadContext structures on the heap instead of on the stack, the latter doesn't work in mixed mode if the native frame gets unwound during exception handling, so the set_context (NULL) call is never executed, leaving a dangling ref in the tls variable. (#7747)
* mono/mono@678576f5a8 [System.Windows.Forms] Reset check state of item when removing it. (#7744)
* mono/mono@87fd071412 Revert "Swap Close/Dispose calls so that the receiver_thread_main loop will be properly interrupted (#7390)" (#7745)
* mono/mono@9b702e8052 Bump API snapshot submodule
* mono/mono@e6fb82b2c7 Bump bootstrap dependency
* mono/mono@7a9f8405d4 [corlib] String from CoreFX/CoreRT
* mono/mono@20ba08543e [corlib] Use UTF8 bytes convertor directly
* mono/mono@d9e3d7c407 Remove dead code (#7738)
* mono/mono@c732bd4758 This fixes an issue we are seeing with VSTU debgugging in Unity. (#7634)
* mono/mono@7faa462046 Fix bug #60843 and add test (#7640)
* mono/mono@d26fb8a3eb Forward mono_string_new_wrapper to mono_string_new for error handling. (#7718)
* mono/mono@d5d1fb290d Bump roslyn-binaries to include missing file
* mono/mono@dd09fa9982 [mcs] Adds cloning for TupleLiteralElement expressions (#7746)
* mono/mono@3fa3592376 Uncomment and fix ServiceHost creation via ServiceFactory in SvcHttpHandler.cs (#3465)
* mono/mono@74dd088d40 [metadata] Add mono_class_publish_gc_descriptor
* mono/mono@f42fdeca61 [mcs] Fixes codegen for null fixed string statement
* mono/mono@8e3be15335 [metadata] Move mono_class_compute_gc_descriptor back to object.c
* mono/mono@9e4eb1ca69 Bumps roslyn to 2.7.0
* mono/mono@dc0cf83b3a [arm] fix stack alignment for structs (#7691)
* mono/mono@0dec8fda18 [sgen] Fix scanning of large arrays (#7672)
* mono/mono@39c9f9d935 Merge pull request #7724 from lewurm/wildcardconnect-watchos
* mono/mono@e40c97e771 [interp] Disable pinvoke3.exe test on x64 (#7739)
* mono/mono@06463f4ca2 [Tailcall] Add interface tailcall tests, and generics thereof. (#7703)
* mono/mono@9914517a12 Remove obsolete code for getting TLS values from other threads. (#7714)
* mono/mono@9fe7008d97 [HttpClientTest] remove WildcardConnect () on WatchOS
* mono/mono@7dea71ce64 Touchup for https://github.com/mono/mono/pull/7599/
* mono/mono@3766089898 Merge pull request #7599 from lambdageek/abort-cctor-no-protection
* mono/mono@f617929e9e [runtime] Don't use clock_gettime on WatchOS and tvOS.
* mono/mono@081c79e687 Add csc-dim script to .gitignore
* mono/mono@7cc78d08b0 Merge pull request #7707 from mono/fix-boottime-osx-10.7
* mono/mono@9cf2550ba2 Update man page, MONO_DISABLE_AIO is now MONO_ENABLE_AIO. (#7715)
* mono/mono@16e6e7df70 [sgen] Finish thread pool work before shutting down threads (#7647)
* mono/mono@e480620040 [System]: Fix a race condition that was exposed by #7358 (see #7668).
* mono/mono@120aa248fa [sdks] Fix building the ios device tests. (#7706)
* mono/mono@a5c6f5c5ca [w32file] do not discard sub-second resolution for access- and writetime if possible (#7650)
* mono/mono@b37166882d [runtime] Fix file handle leak with dedup+aot (#7694)
* mono/mono@feb8b568ba [mprof-report] Fix reading of TYPE_JITHELPER events in v13 files. (#7677)
* mono/mono@b77313855c [loader] Don't load framework Facade assemblies that are older than expected. (#7663)
* mono/mono@62921c8a62 [runtime] Don't use clock_gettime in MacOS.
* mono/mono@7528656820 [msbuild] Bump msbuild to pick up fix for issue #7184 (#7665)
* mono/mono@53a59ccf76 [sdks] Fix building the ios tests. (#7701)
* mono/mono@1c8b460b4c [version.h] Support .git being a submodule (#7689)
* mono/mono@e99ac890e6 Add csc-dim as a prototype if default interface implementation
* mono/mono@7aeaafd281 [runtime] Fix mono_msec_boottime () so it compiles on older ios versions, clock_gettime () is only available from ios 10. (#7671)
* mono/mono@8ae317a1e8 [arm64] Add a known TLS offset. (#7530)
* mono/mono@b6f56a115f [Tailcall] Cleanup, handle varargs, cleanup varargs handling, be sure not to use unsupported tailcall_membase, pass r11 through, align patches. (#7600)
* mono/mono@249a02d936 Updates codeowners (#7679)
* mono/mono@5232bef282 Disable a flaky FileSystemWatcher test (#7578)
* mono/mono@540ef385fa If a bad header is received from the client or the connection is broken, send an internal VM_DISPOSE command to shut down the debugger thread properly.  This prevents runtime hangs that occur during profile events after the debugger shuts down.
* mono/mono@68a9bbe69f Update Server.py to run on both python 2 and 3
* mono/mono@2f21177019 Merge pull request #7584 from alexischr/fix-gh-6940
* mono/mono@fe3c5134bf Implement C#7 binary literals (#7659)
* mono/mono@421e017479 [System.Windows.Forms] Fix bounds manipulation in Control.DrawToBitmap (#7629)
* mono/mono@d3e2518fb6 [sdks] Fix concurrent building of MonoAotOffsetsDumper.exe + Simplify building of support library (#7652)
* mono/mono@e36148dbd2 [tests] Prevent starvation by thread doing GCs (#7651)
* mono/mono@ec4c990af3 [System.Net] Replace use of obsolete `SupportsIPv6` property.
* mono/mono@43415f5f2b [threads] Add mono_uninstall_current_handler_block_guard
* mono/mono@92042c9732 [threads] Delay abort via handler block guard when in abort protected block.
* mono/mono@b0734593de [tests] Run abort-cctor.exe on the coop Jenkins job
* mono/mono@ea4274f2eb Revert "[Tailcall] Proper fix for F# regression." (#7656)
* mono/mono@fdbf51184a [msvc] Update csproj files (#7654)
* mono/mono@b2271853c3 [Tailcall] Proper fix for F# regression. (#7621)
* mono/mono@9b3893f84a [tests] Class should be viable even if cctor is aborted in in nested finally clause
* mono/mono@247a13b081 [System.Windows.Forms] Improve logic for closing complex ToolStripDropDown layouts. (#7630)
* mono/mono@5d23a12446 [System.Windows.Forms] Unify layout engines for Controls and ToolStripItems (#7612)
* mono/mono@6bdeea1503 [jit] Incorrect code under mono --trace. (#7627)
* mono/mono@395b37c286 Fix issue #7596 on Windows x64. (#7625)
* mono/mono@5820d1fc66 [sgen] Use current nursery size when computing allowance (#7601)
* mono/mono@52429673dc [mini] Don't inline methods if they're going to be instrumented for coverage. (#7554)
* mono/mono@851b36ecb2 [mini] Improve error reporting by using MonoError around more places. (#7607)
* mono/mono@6906c9dc40  [interp] Don't crash when freeing delegate ftnptr  (#7586)
* mono/mono@2883e562e2 Fix platform-specific build issues (#7342)
* mono/mono@2d0eee9ae3 [jit] Fix partially shared constrained calls in llvmonly mode. (#7561)
* mono/mono@ec319e6de7 [aot] Increase the buffer size in emit_exception_debug_info (). (#7638)
* mono/mono@ff61c7751a [build] Fixes mcs only dist build
* mono/mono@4b88e2a0e2 [System]: Introduce `WebCompletionSource<T>` and use it in `WebOperation`. (#7358)
* mono/mono@29c2ba9387 Merge pull request #7520 from alexischr/use-coreclr-GetTickCount
* mono/mono@7e3a1ddaa0 [mcs] Fixes parsing ref-struct with partial keyword
* mono/mono@8728280550 [sdks] IOS fixes. (#7617)
* mono/mono@40b53bd2e0 [corlib] Handle multiple segments in IsolatedStored::GetFileNames. Fixes bxc #11771
* mono/mono@8ceead93e3 [Tailcall] Quick fix for building F#. Do not tailcall any method with a vtable_arg. (#7609)
* mono/mono@1c88a11545 [Coop thread threadpool mmap] Convert more functions to coop/handle. (#7097)
* mono/mono@239aad5265 [msvc] Update csproj files
* mono/mono@34b4d35fb7 [runtime] Clean up symbol names to not pollute the global namespace.
* mono/mono@1d70b62770 [profiler] Increment ref count of an image's method while we're keeping around pointers to it.
* mono/mono@6b116cca18 [merp] only target macOS, HOST_DARWIN includes iOS etc. as well
* mono/mono@40924c47ba [Mono.Data.Sqlite] Throw better exception for missing mobile support
* mono/mono@a856f8d8e4 [Tailcall] Cleanup is_supported_tail_call, put more logic in it, and be sure not to tailcall_mem_base if not supported (i.e. virtual_ not just CALLVIRT) (#7608)
* mono/mono@7e7d8a3b4f [Facades] Make System.Net.Http.Rtc.dll a net_4_x only facade (#7590)
* mono/mono@5f572ff7a6 [msvc] Update csproj files
* mono/mono@6e246cf613 [Facades] Move types from Facades into class libraries (#7574)
* mono/mono@4e3389667f [System.Xml] Update source file location from commit d4816ef1abcfc5b3dea41a87fe5a7a4c4a3781ed
* mono/mono@8c3d7c81af [System.Windows.Forms] Fix custom test targets in makefile. (#7571)
* mono/mono@9dbd080c29 [System.Windows.Forms] Update code for top-level windows (#7570)
* mono/mono@e85dbca0f2 Disable TestBug8592BasicOperations test
* mono/mono@b1d2b85825 Make Form scaling tests platform independent.
* mono/mono@cdb9b90baa Correcting typos for ISSUE_TEMPLATE.md (#7575)
* mono/mono@99198da52b [msvc] Update csproj files (#7559)
* mono/mono@16b3884854 Disable bug-80307.exe
* mono/mono@a601516ca1 [tests] Disable delegate-15.exe in the full-aot profile. (#7529)
* mono/mono@8f926ed464 [ppdb] Set the column number in mono_ppdb_lookup_location ().
* mono/mono@78de671964 Swap bytes for port number as Win32 API returns in network order.
* mono/mono@3b0c0bd1cf Build system tweaks for AIX (#7542)
* mono/mono@486036b696 Revert "[Tailcall] Do not create never-executed trampoline for tail.call self. (#7331)" (#7550)
* mono/mono@06a4273d73 [mono-time] Replace mono_msec_boottime() with CoreCLR implementation. Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=58413
* mono/mono@e456f91053 Bump api-snapshot
* mono/mono@9a2b5324ee [Facades] Add missing Facades that exist in .NET 4.7.1 (#7541)
* mono/mono@b6be2e11a7 [threads] Fix race between abort socket syscall and thread shutdown (#7507)
* mono/mono@4ae98fb31b Merge pull request #7515 from kumpera/le_debugger_cleanup
* mono/mono@868a402137 [metadata] split IL generation code into seperate compilation units. (#7487)
* mono/mono@826f15a509 [interp] Fix return of value type from interp to native (#7519)
* mono/mono@f24a6d622b gboolean g_is_usermode_native_debugger_present (void). (#7488)
* mono/mono@03914603a3 [runtime] Add MS telemetry reporter for unmanaged exceptions (#7451)
* mono/mono@d3a4e19f3c Merge pull request #7533 from akoeplinger/disable-test
* mono/mono@63e5e80d3a [bcl] Fix test build with mcs (#7512)
* mono/mono@14485be705 [System.Windows.Forms] Fix lifetime of Graphics objects in TextBox controls (#7491)
* mono/mono@b9d52fc4f1 [System] Disable SocketTest.AcceptBlockingStatus
* mono/mono@91b64b4560 [System.Windows.Forms] Fix bugs in PrintPreviewControl. (#7493)
* mono/mono@ee30689c18 Implement native ValueType Equals and GetHashCode support for pointer fields
* mono/mono@4532cf5fd5 [interp] Fix stack usage after throw (#7461)
* mono/mono@523ba159c2 [sgen] Fix the clearing of bits in the gc descriptor bitmap when using weak fields.
* mono/mono@660e166c7b [eglib] Fix typo in g_assertf (#7458)
* mono/mono@c745a9575d [jit] Move the check for open constructed types later in mono_jit_compile_method_with_opt (), this function can receive (#7494)
* mono/mono@25f4ef2789 [wasm] Make switching between debug/release builds easy. Build pdb files.
* mono/mono@eba41fd88a [wasm] Update SDK driver to handle debugging.
* mono/mono@334ddbd3ef [wasm] Initial support for debugging.
* mono/mono@1a56fe6a15 [wasm] Fix unwinding to work with the general unwinder.
* mono/mono@ccbb873498 [interp] Fix pinvoke from dynamic methods
* mono/mono@4ad92ef05f [interp] Fix detection of pinvoke call
* mono/mono@940f2d1a9f [interp] Fix runtime invoke of pinvoke method
* mono/mono@e0f8597e9c Fix generated file when passing --bundled-header (#6736)
* mono/mono@b4ee86154f [Tailcall] tail.callvirt support for AMD64 JIT (#7426)
* mono/mono@c2bf82fb98 [System]: WebRequestStream now throws correct exception on cancellation (#7074).
* mono/mono@8e4f0d8ff4 [Tailcall] Do not create never-executed trampoline for tail.call self. (#7331)
* mono/mono@ab67bcfd0b Provide compile-tests-parallel that honors the command line so e.g. (#7479)
* mono/mono@3e8f4f7db8 [msvc] Update csproj files (#7497)
* mono/mono@a5f980dc00 [interp] Let the backend deal with thiscall cconv
* mono/mono@8b2ca1344f [interp] Fix EH with exception thrown from icall
* mono/mono@da7650d3d9 Bump API snapshot submodule
* mono/mono@03b030d921 TaskAwaiter from CoreFX
* mono/mono@12557bec39 [metadata] An array is not an IEnumerator`1
* mono/mono@1140ec5394 [test] An array is not an IEnumerator`1
* mono/mono@c0a5753b02 [metadata] Add IEnumerator`1 to MonoDefaults struct
* mono/mono@36a471f14e [System] Remove compiler config sections for types which cannot be instantiated
* mono/mono@32d06fd803 [corlib] Fix Type.GetInterface() to find implemented interface when "ignoreCase: true" is used (#7464)
* mono/mono@1181815eed [w32handle] Lower minimum memory usage (#7465)
* mono/mono@e6de24c2d1 [build] Unify DEFAULT_REFERENCE handling so I can override it with TARGET_NET_REFERENCE for individual tools
* mono/mono@73859e3df2 [msvc] Update csproj files
* mono/mono@e64cd8cc8d [profiler] Use accessor functions for MonoClass fields
* mono/mono@4e6f5f10fd nuget-hash-extractor: Add msbuild extensions nuget version from vs15.6 msbuild branch
* mono/mono@45f30c307b nuget-hash-extractor: Change the nuget repo name to use for
* mono/mono@695acd0a0b System.Text.RegularExpressions from CoreFX (#7363)
* mono/mono@85b605042b [acceptance-tests] Actually disable gcsuppressfinalize.exe test
* mono/mono@c89abe5467 Bump boringssl submodule.
* mono/mono@47df243579 [mini] unpack function pointers for jump patching
* mono/mono@095519c899 [ppc] update define usages for creating/unpacking function descriptors
* mono/mono@4fea7fb745 [ppc] use new patching machinery
* mono/mono@ffaf5ffe0f [mini-runtime] unbreak platforms where MONO_ARCH_HAVE_PATCH_CODE_NEW isn't defined
* mono/mono@8ba4947f7a [metadata] Use MonoClass getters in the rest of metadata/ (#7354)
* mono/mono@6f225e6176 [System.Windows.Forms] Fix inconsistent state of Document object (#7422)
* mono/mono@9e1ba501ff Fix for gcc 4.4; nominal support for older. (#7419)
* mono/mono@56263d4a75 [mini] Virtual call target is never known, remove dead code. (#7424)
* mono/mono@62c8557a7a [System.Security] Fixes decoding of CMS/PKCS #7 messages with an explicit cryptographic object identifier
* mono/mono@02abf28216 [corlib] Ignore TimeZoneTest.TestCtors on iOS under certain conditions due to an Apple bug. (#7429)
* mono/mono@d1ed53624b [acceptance-tests] Disable gcsuppressfinalize.exe test that started failing
* mono/mono@b664dfe79f [System.Windows.Forms] Updated unit tests (#7405)
* mono/mono@30ad219533 [mixed mode] skip gsharedvt_out_sig_wrapper frames and improve regression test
* mono/mono@dab1ffc081 [interp] use mini infrastructure for stack walking
* mono/mono@a785bd16e9 Merge pull request #7401 from filipnavara/swf-layout
* mono/mono@d2bf59dd3f PPC support for BoringTLS
* mono/mono@ee4ed72695 [acceptance-tests] Add an env var to turn on some Mono debugging options. (#7386)
* mono/mono@4af9e3a511 [Coop] Convert System.Enum to coop/handle. (#7131)
* mono/mono@7c34f0c746 [packaging] Support setting the FULL_VERSION number via env vars (#7414)
* mono/mono@f546b95edf [runtime] Increase the BCL trampoline count (#7409)
* mono/mono@fe95e4b34b [jit] Fix the patching of tail calls for gshared methods, the caller and the caller were using different instantiations to search the jump_target_hash.
* mono/mono@56bf6d3a73 Bump API snapshot submodule
* mono/mono@ff60734df4 Add unit test for TextBox.PreferredSize property and fix updating the preferred size cache on Text change.
* mono/mono@58f25ff1f0 Add makefile rule to build and run the notepad sample.
* mono/mono@7b6b607567 Remove obsolete code from FlowLayoutPanel that is no longer necessary with the corrected nested layouts.
* mono/mono@ae972579de When Form is set to AutoSize enforce it also as the minimum size for the window manager.
* mono/mono@f1de56d31c Update XplatUI backends to properly send WM_WINDOWPOSCHANGED for zero-sized windows.
* mono/mono@e563776f62 Avoid couple of size recalculations by streamlining the SetBounds, SetBoundsInternal and SetBoundsCore methods. Now explicit bounds are only updated in SetBoundsCore, no more all the updating and restoring with UpdateBounds calls. Rely on the WM_WINDOWSPOSCHANGED message to be sent from XplatUI.SetWindowPos to call UpdateBounds. This avoids an explicit call to XplatUI.GetWindowPos and UpdateBounds in SetBoundsCore.
* mono/mono@ff38080cc0 Fix for bug_82326 unit test.
* mono/mono@af26d754ae Fix couple of relayouts causing incorrectly cached control preferred size. Fix events triggered in incorrect order when Control.Controls.Remove is called. Update Dispose behavior with events and exceptions to match the reference implementation more closely.
* mono/mono@5feb428acd Update DisposeTest to work on latest version of .NET Framework.
* mono/mono@4f3adb750d Add test for label self-sizing behavior.
* mono/mono@376002afb4 Call LayoutEngine.InitLayout when appropriate and move the dist_right and dist_bottom calculation there.
* mono/mono@a859588486 Add cache for PreferredSize value.
* mono/mono@016a5a8679 Fix propagating layout to parents and then back to children when PreferredSize changes.
* mono/mono@71931189fa Remove obsolete code for layout of AutoSize forms.
* mono/mono@622ad5480d Unify the code for layout of anchored controls to avoid setting the bounds twice for controls with AutoSize set to true.
* mono/mono@78ad684762 Fix the default layout engine and its quirks enough to pass all unit tests again.
* mono/mono@cbb07605df Move GetPreferredSize implementations from container classes to respective LayoutEngine implementations. Rework the layout engines to use AutoSizeInternal property since TextBoxBase has its own AutoSize that should not be respected by layout engines. Rework automatic sizing behavior of TextBoxBase to return correct values. Rework TableLayout completely to use same code for layout and calculation of preferred size.
* mono/mono@d758a6d65f Fix updating panel references when assigning TableLayoutSettings to TableLayoutPanel.
* mono/mono@71989c037e Ignore invisible controls in FlowLayout.
* mono/mono@ca957c45b4 Apply size constrains to control sizes when calculating flow layout.
* mono/mono@4b093a9d2d Apply size constrains to control sizes when calculating flow layout preferred size.
* mono/mono@6943077ab9 Added missing support for flow breaks in FlowLayoutPanel's preferred size calculation.
* mono/mono@eed14424e5 Add tests for FlowLayoutPanel.PreferredSize.
* mono/mono@a369011555 Apply the constraints when setting MinimumSize/MaximumSize and update the unit test to demonstrate it.
* mono/mono@78f4b60e6c Reduce memory pressure by reusing the LayoutEngine objects.
* mono/mono@f56b710942 Added missing PerformLayout() calls to Control.MinimumSize and MaximumSize setters.
* mono/mono@18001b61a3 Apply Maximum/MinimumSize constraints when calculating the preferred size.
* mono/mono@1417a68137 Update Label.InternalGetPreferredSize to take the proposed size into account.
* mono/mono@73c8e1f615 Fix Label automatic sizing code.
* mono/mono@baf431b393 [metadata] Use mono_atomic_store_release to initialize gparam cache
* mono/mono@486be78f8a Update README.md with current directory structure
* mono/mono@965a813f51 [msvc] Update csproj files (#7404)
* mono/mono@0c6f7fa7c5 [mcs tests] fix runtime arguments passing to test harness (#7400)
* mono/mono@9725d50c87 [sre] Use MonoClass getters in sre-save.c (#7352)
* mono/mono@15578eab17 Bump corert
* mono/mono@43ac34b36e [sdks] Unify targets to build runtimes (#7394)
* mono/mono@e7ba41d14c Swap Close/Dispose calls so that the receiver_thread_main loop will be properly interrupted (#7390)
* mono/mono@24c52e28c0 Use VSCMD_ARG_TGT_ARCH env in mkbundle on Windows when trying to autoetect target architecture. (#7281)
* mono/mono@4874e18fd2 [corlib] Remove IVT for S.R.I.RuntimeInformation facade (#7385)
* mono/mono@a9c37afaa4 [sdks] Fix the ios build.
* mono/mono@16e5f04960 [interp] remove `method` field from `InterpFrame`
* mono/mono@182a748586 [runtime] Use MonoClass getters in object.c
* mono/mono@2713dfc577 [metadata] Move MonoClass:gc_descr and runtime_info initialization to class-init.c
* mono/mono@9abe6ebf59 [appdomain] Fix path clobbering when trying to shadow copy siblings
* mono/mono@76d5a16447 [Test] Reenable HttpRequestIgnoreBadCookies in monotouch. (#7330)
* mono/mono@bbb882b018 [sdks] Add watch device build.
* mono/mono@b4d53f4d7c [sdks] Add watch simulator build.
* mono/mono@dd5e5c8239 [sdks] Add tv simulator build.
* mono/mono@6cc113a4b3 Ios sdk changes (#7258)
* mono/mono@d8e49b1c27 Fix build from tarballs due to missing corefx.unix.sources
* mono/mono@076557c37f Use attribute(deprecated) instead of attribute(error). (#7362)
* mono/mono@68376f1f9b [msvc] Update csproj files (#7367)
* mono/mono@319749c314 Make it build.
* mono/mono@d51e55d4a3 Bump linker to its latest master.
* mono/mono@a838b6fb39 [interp] Enable more tests (#7315)
* mono/mono@8ddcea2956 [profiler] A few low-hanging enhancements. (#7314)
* mono/mono@ddf4e7be31 Update ppc badge to correct URL in README
* mono/mono@db63561143 Merge pull request #7341 from akoeplinger/dont-throw-in-dispose
* mono/mono@fa21013d7f Don't throw NotImplementedException in Dispose()
* mono/mono@2c2fac29eb [msvc] Update csproj files (#7337)
* mono/mono@4f9b89adc1 CoreFX System.Runtime.CompilerServices (#7118)
* mono/mono@cb956b58a6 Revert "Revert "[System.IO] Integrate FileSystemWatchers from CoreFX The FSEvent CoreFX watcher becomes the new default for MacOS.""
* mono/mono@fdefcf1f25 Fix build
* mono/mono@2174a521a3 Revert "[System.IO] Integrate FileSystemWatchers from CoreFX The FSEvent CoreFX watcher becomes the new default for MacOS."
* mono/mono@f5b10f34a9 [System.IO] Integrate FileSystemWatchers from CoreFX The FSEvent CoreFX watcher becomes the new default for MacOS.
* mono/mono@872c048830 [wasm] Add a missing dependency in wasm.
* mono/mono@8facc4afb2 [System]: Use new `WebCompletionSource` instead of `TaskCompletionSource`. (#7293)
* mono/mono@dfe6e2d4a2 Merge pull request #7321 from mono/fix-linuxarm-native-stacktrace
* mono/mono@9648645fb3 [System]: Enable some System.Net.Requests tests from CoreFX. (#7080)
* mono/mono@ce2584911f Fix gdb not being used for native stacktraces in some cases
* mono/mono@096147d428 [tests] Add --repeat parameter to enable runtime tests to run multiple times (#7291)
* mono/mono@a5da7b21f4  [runtime] Implement thread info flags and get rid of tools threads. (#7226)
* mono/mono@e8141fc31d [sdb] Fix VirtualMachine.CreateEnumMirror () so it works with types from non-root domains.
* mono/mono@b8da973620 [marshal] Use MonoClass getters in marshal.c (#7253)
* mono/mono@2f9b9142cd [msvc] Update csproj files (#7310)
* mono/mono@6ca674ed68 Update the random checking code in autoconf to this decade (#7250)
* mono/mono@b1801b7804 Always enable explicit null checks for AIX (#7300)
* mono/mono@31c03a9cbe [System.Windows.Forms] Remove dependency on Hwnd objects outside of XplatUI code. (#7243)
* mono/mono@6ac2003417 bump nunitlite
* mono/mono@216b5c5db8 Merge pull request #7286 from lambdageek/fix-gh-7095
* mono/mono@909b30b5ba [wasm] Fix v8 provisioning. (#7244)
* mono/mono@cfaa28e1d8 [threads] Reduce race window with async abort (#7274)
* mono/mono@f901c70548 [runtime] Don't assert in mono_class_is_assignable_from on iface gtd
* mono/mono@8d37ddbf1d [runtime] Use MonoClass getters in a few small files (#7254)
* mono/mono@375304d501 [test] System.Type.IsAssignableFrom of gtd array special interfaces.
* mono/mono@d63e8b6f5a [corlib] CompareInfo from CoreFX (#7272)
* mono/mono@c152f67574 Merge pull request #7263 from filipnavara/swf-carbontests
* mono/mono@de8dc8311d Merge branch 'master' into swf-carbontests
* mono/mono@ffbb3d90ae Merge pull request #7234 from filipnavara/swf-painteventend
* mono/mono@5705b3d207 Update CODEOWNERS
* mono/mono@905077f90f Add zlib.lib/zlibstatic.lib in Windows VS mkbundle build when using -z argument.
* mono/mono@d69c1568f6 Remove mention of MONO_THEME from man page. (#7282)
* mono/mono@dabdacd99b [metadata] Cache GenericParamInfo for anonymous gparams in MonoImage (#7155)
* mono/mono@94f8dcf102 [wasm] Add LTO release configuration. Saves 15% of binary size. (#7221)
* mono/mono@ba40177a44 Merge pull request #7269 from filipnavara/swf-theme-obsolete
* mono/mono@8ebc608feb [Tailcall] Add 11 tests that are all runnable, never crash, are self checking. (#7232)
* mono/mono@120be0fa4e Remove obsolete Nice theme code.
* mono/mono@e2e66cb4f8 [wcf] use ConcurrentDictionary for wait handles (#7265)
* mono/mono@8739c9b05a Bump api-snapshot
* mono/mono@5aafe83bbd Activate MDI child windows after showing them (fixes 7 unit tests failures).
* mono/mono@cb48d78dc6 Return dummy value in XplatUICarbon.IconSize to let System.Windows.Forms.SystemInformationTest.IconSizeTest pass.
* mono/mono@091595f3d8 Fix the default font value in test.
* mono/mono@0d524452c5 Make XplatUICarbon.SetFocus send messages synchronously, fixes 9 unit tests.
* mono/mono@bb99dcade2 Fix windows creating, destroying and message processing in Carbon driver to be stable enough not to freeze the test suite.
* mono/mono@cde44408a4 Spit out the name of a test along with the error about undisposed forms.
* mono/mono@0a2d57ed67 Call XplatUI.PaintEventEnd when an exception happens in OnPaint.
* mono/mono@931380017f Unregister thread exception handler at the end of test.
* mono/mono@0129c25e43 [tests] Use RemoteExecutor from corefx
* mono/mono@335ca28eaf [llvm] Pass only the imt argument if both imt and rgctx arguments are required.
* mono/mono@c99ac6a87e Add missing XplatUI.EndLoop call.
* mono/mono@a974057d92 [sdks] Merge mxe-Win32 and mxe-Win64 targets since we are building both in XA anyway
* mono/mono@1af9291294 Fix layout of ColorDialog on systems with different window border sizes.
* mono/mono@657c7637fb Fix typo in implementation of Disposing property.
* mono/mono@67e557fa2e Handle more special keys in KeysConverter to ensure compatibility with designer generated resource files.
* mono/mono@6d889314b2 Remove obsolete theme code (disabled by commits 910c669 and 93724d2) and the last remaining usage of MONO_THEME environment variable.
* mono/mono@67c1708677 Add PointerValue.Value to dereference and access pointer value. (#6840)
* mono/mono@9bbe5e5e5f Bump API snapshot submodule
* mono/mono@392d3452f2 [System.Net.Http] Better exception message for invalid header value
* mono/mono@798c5efa52 Fix bug 18941: Marshal.OffsetOf and Marshal.SizeOf return incorrect results (#7142)
* mono/mono@bfdbc1e676 Update the method signatures in the new X11 backend.
* mono/mono@1f0fc93de4 [sgen] Check if we are exceeding the worker count limit (#7180)
* mono/mono@12cbe9a7bd [msvc] Update csproj files (#7238)
* mono/mono@d45fb4e882 Fix xamarin-android issue 1130 and add test (#6326)
* mono/mono@a32ca3e2c2 [tests] Avoid false pinning in weak-fields test
* mono/mono@1e9816a10e [tests] Avoid false pinning in tests
* mono/mono@38846ee754 Properly handle non-quoted multipart content dispositions
* mono/mono@bf12b6318a Simplify System.Windows.Forms XplatUI code by adding PaintEventArgs parameter to PaintEventEnd.
* mono/mono@9c55770f3f [icall table] add ldflags for bitcode
* mono/mono@a9aa188ab2 Make field tokens sequential in SRE. (#7055)
* mono/mono@1804219600 [xbuild] add property that is available in msbuild (#7223)
* mono/mono@03371921a1 Problem building on Arch linux #7200 (#7230)
* mono/mono@481827b6af [runtime] Don't prepend '0x' to %p-formatted numbers.
* mono/mono@5eb4191943 [build] Remove multi stage build from Mono.Security (#7171)
* mono/mono@218ffb9883 Merge pull request #7225 from alexischr/bump-bockbuild
* mono/mono@2b068cb5a4 Fix some enable minimal. (#7195)
* mono/mono@ca47362a92 Fix mono_arch_setup_async_callback and add mono_arch_setup_resume_sighandler_ctx on PPC (#7159)
* mono/mono@6e0c91f053 [interp] add another signature for interp_in wrappers
* mono/mono@c382b03fd5 [coop] Rename mono_threads_is_coop_enabled to convay better its semantic (#7178)
* mono/mono@8900231c8b [mini] More minor JIT cleanups. (#7130)
* mono/mono@983966c7ca [bockbuild] Detect HTTP errors  when using curl
* mono/mono@0a8126c209 [WASM] Implement timers. (#7193)
* mono/mono@f0b7825189 Updates to support building the BCL using Visual Studio 2017 on windows (#6877)
* mono/mono@123d086e27 Merge pull request #6892 from lambdageek/use-getters
* mono/mono@c1cbe060f6 Merge pull request #7218 from mono/revert-6018-fix_10087
* mono/mono@49a1c8423c Disable a flaky test on Windows https://github.com/mono/mono/issues/7199
* mono/mono@199dad7e84 Revert "Run the ProcessExit events in the threadpool and enforce a 3 seconds limit. Fixes #10087"
* mono/mono@72e5ca60b8 [msvc] Update csproj files
* mono/mono@c6f91eaa58 Fix unknown-length requests being treated as if they are fully preloaded. (#6822)
* mono/mono@119cf5259e [aot] Emit the same instances in hybrid aot mode as in full aot mode.
* mono/mono@f90612e047 [bcl] Comment/stub out some unused icalls to prevent problems with AOT. (#7183)
* mono/mono@3addbfe627 Merge pull request #7181 from mono/bockbuild-download-using-curl
* mono/mono@8a52f590fc Bump bockbuild for https://github.com/mono/bockbuild/pull/62
* mono/mono@d4816ef1ab [System.Xml] Remove reflection calls for value has to be set
* mono/mono@8ce0775a03 [jit] Disable partial sharing during JITting, its only been tested in full aot mode, and doesn't seem to work with JITted methods. (#7161)
* mono/mono@2d2033e440 Use proper sized integer for ioctlsocket on Win32. (#7153)
* mono/mono@89804e62bb [mono-api-html] Expand "ignore" functionality (#7154) (#7175)
* mono/mono@df273181b5 Merge pull request #6018 from kumpera/fix_10087
* mono/mono@03b6095e3e [runtime] Magic interfaces requires the complex stelemref to handle arrays. Fixes gh #6266 (#7038)
* mono/mono@761ddc60f9 [corlib] Make MissingMember exceptions working again after #6123
* mono/mono@735337d5e6 [metadata] Implement MONO_CLASS_IS_INTERFACE(c) in terms of public API
* mono/mono@bae5cd2d6e [metadata] (class.c) Use MonoClass getters
* mono/mono@f636486045 [metadata] add missing MONO_ENTER/EXIT_GC_SAFE guards around access(2) in is_file_writable (#7126)
* mono/mono@d2383c037d [corlib] Support terminals without color support
* mono/mono@705223f6d5 [interp] Use frame_addr as base pointer in more places (#7128)
* mono/mono@5b0503a5b3 [profiler] Some minor housekeeping. (#7123)
* mono/mono@ec2faf0388 [wasm] Fix master and add sample. (#7160)
* mono/mono@ad03afd96e [msvc] Update csproj files (#7173)
* mono/mono@a85911f480 Merge pull request #6034 from alexischr/bug-59400
* mono/mono@8658bb6048 [build] Don't add specific support file to all xunit test builds (#7163)
* mono/mono@a19fad65f3 Fix copyright
* mono/mono@7de96dd412 Merge pull request #7150 from alexischr/bug-46473
* mono/mono@5fabb059cf Add Mono-specific System.Net.Test.Common.Configuration.Http. (#7156)
* mono/mono@d7551cc9bf [metadata] Improve error message for loading unresolved types (#7147)
* mono/mono@2837f433d9 [corlib] Fix RuntimeFeatureTest.NoNewFeaturesAdded on mobile (#7149)
* mono/mono@1426d6a8da [remoting] Synchronize serializer/deserializer usage for call data. Fixes #46473
* mono/mono@18e274b14b Bump corefx submodule
* mono/mono@045acb8f19 [jit] Handle more cases for gsharedvt constrained calls. (#7081)
* mono/mono@3b8ec9e97b [wasm] Fix the port to work with the latest version of emcc. (#7091)
* mono/mono@eef0801f3e Assorted fixes for AIX and i (#6934)
* mono/mono@38989b012f [Coop] Convert many simple mono_object_new_checked to mono_object_new_handle. (#7129)
* mono/mono@dd4dbd8d4b [System.ServiceModel] Prevent crash in Dispatcher.ListenerLoopManager… (#7136)
* mono/mono@1791e50b56 [class] Fix resolution of interfaces in classes implementing IEnumerator. Fixes #59400
* mono/mono@7b120ae2d4 [msvc] Update csproj files (#7140)
* mono/mono@98cadff5f6 bump nunit-lite
* mono/mono@ecadc6cf31 [wasm] Make .stamp-depot-tools more reliable. (#7078)
* mono/mono@9b1e845740 [corlib] order sources content
* mono/mono@bf3ed7115b [corlib] Add System.Runtime.ProfileOptimization APIs (#7120)
* mono/mono@6a01a0b314 WinForms: Enable external CocoaDriver external driver (#7100)
* mono/mono@a65c354f7b Bump api-snapshot submodule
* mono/mono@4d52a10ca0 [mini] Move some arch-specific interpreter logic into backends and provide stubs.
* mono/mono@4358581865 [mini] Don't use arch_target to point to arch/ subdirs.
* mono/mono@e9c51fa3e5 [mini] Use a MONO_ARCH_INTERPRETER_SUPPORTED define instead of checking archs in driver.c.
* mono/mono@23acd0f78b Fix for XA integration
* mono/mono@7da8b503c6 [msvc] Update csproj files
* mono/mono@f6a6779ff5 [corlib] CoreRT System.Threading.Tasks (#6672)
* mono/mono@ed95106965 Coop/handle conversion of ByteArrayToCurrentDomain and ByteArrayToRootDomain. (#6692)
* mono/mono@c4d1da6ef3 [master] [sdks] Fix for XA integration (#7103)
* mono/mono@a7ed34f4db Centralize handle-based post-object creation code. (#7096)
* mono/mono@79ef9d5105 Fix race condition in mono_thread_execute_interruption.  (#6833)
* mono/mono@d7626e8217 [coop] Add handle-based object create functions. (#6876)
* mono/mono@aec2773e1d Revert "[System.Drawing] Disable tests except on ARM64 (#6909)"
* mono/mono@83ed33ba2c [Coop] Convert Console to Coop/Handles. (#7060)
* mono/mono@b043ff5f74 [aot] Bump aot file format version because of 7cac757e60cd61aa070f7e0fffca225364f58c0c. (#7079)
* mono/mono@ded74c0b12 Use the preallocated domain->out_of_memory_ex instead of allocating. (#6819)
* mono/mono@52514effbf [marshal] For generic method icalls, handle generic param arguments when using coop handles
* mono/mono@e01355eead [Cplusplus] Fix possible race condition and add casts between void* and function pointers. (#6871)
* mono/mono@9209ea0629 Merge pull request #7073 from mono/disable-test-sleep
* mono/mono@cfa087bfd7 [aot] Rename mono_aot_get_method_checked () to mono_aot_get_method (), there is no non-checked version anymore. (#7071)
* mono/mono@e2419dee78 [interp] Add missing exception checkpoints (#6917)
* mono/mono@1028994a88 Disable a flaky test on PRs (https://github.com/mono/mono/issues/6999)
* mono/mono@cf644472f9 [msvc] Update csproj files (#7070)
* mono/mono@23e6f6f4b5 Revert "[jit] Make some JIT regression test files compile in the mobile profile (#7059)" (#7069)
* mono/mono@b7385ba797 [sdks] Add targets for the watch cross compiler. (#7061)
* mono/mono@fc7bda62d3 [coop] Convert some `mono_exception_*` functions Reduce managed exposure in utils a little.
* mono/mono@e2874db522 [jit] Make some JIT regression test files compile in the mobile profile (#7059)
* mono/mono@ea1fac3d89 [coop] Remove unnecessary write barriers against thread locals and cleanup a little. (#6874)
* mono/mono@3bd630eba7 [mkbundle] Automatically bundle config files and machine.config files (#7002)
* mono/mono@b90d8ec387 Remove GetNLSocket which is unused and produces a warning because it is unprototyped. (#6691)
* mono/mono@4a83009a03 WSL does not nul terminate uname.release. memset(0) it first. (#7023)
* mono/mono@8d82699736 Merge pull request #7057 from lewurm/interp-disable-flaky-pinvoke-test
* mono/mono@62bf8bd4d5 [System.ServiceModel.Activation] Move ServiceHostFactory.cs where it's used (#7044)
* mono/mono@2322177e6a [interp] disable flaky pinvoke test
* mono/mono@8ad191dfbb mono_get_exception_runtime_wrapped_checked contains an unnecessary 16 (#6659)
* mono/mono@20e69fa199 Centralize post-object creation code in mono_object_new_common_tail. (#6903)
* mono/mono@a33cbb873c [interp] Fix native to interp transition (#6868)
* mono/mono@7cac757e60 [aot] Emit the weak field indexes table using the MONO_AOT_TABLE code, so it works with separate aot data files/bitcode.
* mono/mono@8c90350d11 Add denied assembly versions from previous ms extensions nugets
* mono/mono@47187bbc9b [Mono.Posix] .NET Core compatibility - Use [In,Out] for arrays of structures
* mono/mono@57f3f34e60 Revert "[coop] Remove support for invoke thunk wrapper" (#6927)
* mono/mono@8d19e5a1c5 [runtime] Unboxing of nullable enums should throw for boxed ints. (#6958)
* mono/mono@8f35227b88 [debugger] disable StepOutAsync test because it's flaky
* mono/mono@545191f773 Pass null-terminated string for logging
* mono/mono@2c1f45f379 [TermInfo] support new file format terminfo2 introduced with ncurses6.1 (#6960)
* mono/mono@3012ce06e4 Update F# to 4.1.33
* mono/mono@ff98989579 [runtime] Avoid recreating the icall table in lookup_icall_symbol (). (#6988)
* mono/mono@17b4b28f05 [sdk] Fix the invocation of run-step.sh, the --timeout argument is mandatory. (#7013)
* mono/mono@3fdbbe5e44 [sdks] Fix the tar command since the llvm binaries are in different directories now. (#7010)
* mono/mono@f4d3da6d4a [runtime] Fix merge conflict and Move code to its right place.
* mono/mono@c3c6e6c9cd [runtime] Ignore FireProcessExit if the method is missing on corlib.
* mono/mono@b9b08c0d02 [runtime] Implement a domain resistant version of mono_domain_foreach and switch the unloading code to use it.
* mono/mono@755c5bd713 [runtime] Fix docstring for mono_unhandled_exception_checked.
* mono/mono@4f8968cf6c [corlib] Fix minor style issue.
* mono/mono@1fd32df7d1 [runtime] Introduce a non-fatal unhandled exceptions and use it for AppDomain::ProcessExit.
* mono/mono@c9c7dad3a3 Bump mono/NUnitLite
* mono/mono@dd2c320aa3 [runtime] Change domain before firing ProcessExit.
* mono/mono@7500341ec0 [runtime] Run the ProcessExit events in the threadpool and enforce a 3 seconds limit. Fixes #10087
* mono/mono@6e28ccb4e5 [utils] Add "exec" log category for misc runtime activity.
* mono/mono@96f2d163a3 Merge pull request #6970 from dsyme/patch-1
* mono/mono@e52ef6aedd [build] Fixes monolite build (#6982)
* mono/mono@36cbab657f [msvc] Update csproj files
* mono/mono@f61bc393d3 Simplify MonoError and managed Exception creation (#6123)
* mono/mono@60d4907f48 [runtime] Revert mkbundle defaulting behavior made in ca8b8bd346 (#6687)
* mono/mono@d8d3e29f38 Bump api-snapshot
* mono/mono@0354912603 Bump F# mono version to 4.1.32
* mono/mono@d573dec96e Bump linker and update linker-analyzer references
* mono/mono@d6e7483454 [interp] Fix CEE_UNBOX
* mono/mono@7a528f6f97 [sre] Unlock loader lock on error paths (#6951)
* mono/mono@e572acca55 [ci] Only create artifacts.json GitHub status on release branches
* mono/mono@939d720770 [ci] Disable monodoc tests on Windows for now
* mono/mono@ea7b3849c4 Cleanup recent JIT fix to get it done in the right place. (#6895)
* mono/mono@29d402d8e0 [handle] Have `MONO_HANDLE_*` macros use a uintptr_t instead of int (#6906)
* mono/mono@25c41cbf41 Fix gshared support for default interface methods by always passing an mrgctx to them. (#6935)
* mono/mono@1c631424d2 Merge pull request #6929 from mono/disable-test-TaskCancelWait1
* mono/mono@dcecd8ff83 Disable flaky test
* mono/mono@b97d0c43d1 [System]: WebConnection.Connect() needs to probe all IP addresses.
* mono/mono@e43adf3cd5 Change mono_thread_resume_interruption to return void, one less raw pointer to worry about. (#6690)
* mono/mono@c944c358f1 [scripts] Fix scripts/update_submodules.sh for use with git worktree
* mono/mono@7f9167bc5b [runtime] Fix the --enable-icall-symbol-map build. (#6943)
* mono/mono@921132a362 [runtime] Make icall tables loadable. (#6905)
* mono/mono@d8beb3ef11 [profiler] Remove obsolete code coverage support from the log profiler. (#6896)
* mono/mono@48898cb810 [sdks] Fix ios+llvm. (#6939)
* mono/mono@7f47f19085 [runtime] Fix a warning. (#6937)
* mono/mono@b970e766fa [interp] Add class failure checks
* mono/mono@52ebab8603 [interp] Fix varargs passing
* mono/mono@3369b6e214 [interp] Align vt stack in some places
* mono/mono@6ffa48f6ad [interp] Add define for value type alignment
* mono/mono@9f2b8595a3 [jit] Fix the DISABLE_JIT build. (#6933)
* mono/mono@5c4510a8a7 [runtime] Implement support for conflict detection for Default Interface Methods. (#6897)
* mono/mono@284c5afdf4 Bug 60088 - Assertion at ../../../../external/mono/mono/mini/debugger-agent.c:4765, condition `array->len == 1' not met (#6902)
* mono/mono@6a5a14bea7 [System.Threading.Tasks] Disable a flaky test
* mono/mono@dcda4c77bc Disable some PngCodecTest that have trouble on CI right now
* mono/mono@5e7483f354 [System.Drawing] Disable tests except on ARM64 (#6909)
* mono/mono@dd5b5ca52e Set NetworkStream.ReadTimeout in WebConnection.InitConnection(). (#6904)
* mono/mono@2a3b0812a4 [jit] Simplify some gshared code. (#6899)
* mono/mono@2a3c498cbf [interp] disable test_42_arm64_dyncall_vtypebyval
* mono/mono@43617b0123 nuget-hash-extractor: Add msbuild extensions nuget to list of nugets to
* mono/mono@4cb7884477 nuget-hash-extractor: Add support for handling nuget with multiple
* mono/mono@d2998f5089 [msvc] Update csproj files
* mono/mono@71ad99f720 [build] Narrow recursive dependencies
* mono/mono@b3d60257e5 [Mono.Security] Remove unused using
* mono/mono@06b836ed91 [wasm] Make v8 build verbose and fix zip package root. (#6900)
* mono/mono@06a89a59bc Adjust tabbing.
* mono/mono@b2ec39daa5 Add ordinal comparison when matching request path to listener paths
* mono/mono@8917ddfb0c Fixes WCF methods with path parameters in UriTemplate annotation. Bugzilla bug #25444 [https://bugzilla.xamarin.com/show_bug.cgi?id=25444]
* mono/mono@f3b1c9bd88 Pick the Listener that matches the start of the request URL
* mono/mono@c84e6c81a2 [bcl] Fix more assembly identity mismatches (#6870)
* mono/mono@9adf4bd322 [wasm] Add system test suite exclude file. (#6847)
* mono/mono@b6784b27a5 [sdks] Fix build for iOS (#6878)
* mono/mono@3f61f9ff5d configure.ac: Only use library path in libgdiplus_loc
* mono/mono@af03c6ae83 Detect libgdiplus in configure.ac by default on MacOSX (darwin). (#6873)
* mono/mono@b3eabd51c3 Bump bockbuild
* mono/mono@8bfcb27147 [System]: Revert my latest WebResponseStream changes.
* mono/mono@b9d463acb5 Bump bockbuild to get new gtk+ repo location
* mono/mono@8e678de3f3 [msvc] Update csproj files
* mono/mono@a5078a2815 Bump bockbuild to add gtk# generator fix (#6880)
* mono/mono@3203c8bfb3 Merge pull request #6835 from alexischr/disable-monitor-wait-test
* mono/mono@fcb97b2279 [sdks] Add Android build for CI (#6846)
* mono/mono@149073b84c Use gpointer (void*) as a generic pointer, not char*. (#6704)
* mono/mono@31784ba06c [reference-assemblies] Fix public key for some newer v4.7.1 facades (#6863)
* mono/mono@1ad2fc4891 [sdks] Fix download-llvm.sh
* mono/mono@9cab3d73c6 [timezone] ignore LocalId test on XAMMAC_4_5 too
* mono/mono@2c96890aff [sdks] Fix execution permission of download-llvm.sh
* mono/mono@e9235144ca Bump corefx. (#6810)
* mono/mono@766bf49afb [metadata] Define getters for MonoClass fields (#6652)
* mono/mono@c1fd4b064d Add stubs for Interop.NetSecurityNative (#6824)
* mono/mono@d813c533b9 [arm64] Handle arguments of type ArgVtypeOnStack in the dyn call code. Part of the fix for #59184. (#6826)
* mono/mono@d79a892d77 [configure.ac] Do not always enable ninja (#6823)
* mono/mono@0a3d7c0da6 Disable a couple of flaky tests (monitor-*abort)
* mono/mono@43026da5d4 [sdks] Bring back download of llvm for iOS (#6818)
* mono/mono@f8a4bbd357 [ci] Add setting artifacts.json status
* mono/mono@687dc212dc [ci] Add Windows .msi PR build (#6815)
* mono/mono@4b8e0bea19 [interp] Add support for vararg call convention
* mono/mono@f6786099a5 [glib] Include ALIGN_TO and ALIGN_PTR_TO
* mono/mono@d3647fa17e [interp] Add storage fetching for typedbyref
* mono/mono@c8b7d6eece [interp] Add class check for refanyval
* mono/mono@b66cbf955f [interp] Remove virtual call duplicated code
* mono/mono@c3c2819da7 [interp] Remove void call duplicated code
* mono/mono@ed9e0d101d [interp] Rename variable
* mono/mono@f6964ef658 [interp] Remove some null checks
* mono/mono@e8cdc382a7 Bump API snapshot submodule
* mono/mono@1dd3fd1c64 Add missing api to System.Data (fixes 6767)
* mono/mono@386b4d2bc6 [Mono.Posix] Fix the Android xattr check to not disable it on all other platforms.
* mono/mono@9317773e68 [tests] Disable threads-init.exe, it runs out of system threads. (#6803)
* mono/mono@63652bfc25 [utils/threads] Gracefully handle ENOTSUP from pthread_kill () on Apple platforms. (#6754)
* mono/mono@96082e3495 Fix some function pointer types to match, i.e. so C++ compiles w/o extra casts. (#6732)
* mono/mono@ed4331a3d8 [ide] Add setup file for VSCode
* mono/mono@993ed19a6f [metadata] Move MonoClass initialization to a separate file (#6611)
* mono/mono@f01083ac48 [runtime] Add a 'frame_addr' field to MonoStackFrameInfo, which is equal to either interp_frame or ctx->sp. (#6644)
* mono/mono@c0bd5f8a5a [sdks] Script lldb android integration (#6310)
* mono/mono@c7f89e7837 [ci] Make sure packageFileName is a string
* mono/mono@51ec3ddf99 Bump version to 5.13 (#6792)
* mono/mono@da03780370 [System]: WebResponseStream now correctly reads the chunk trailer when using gzip/deflate. (#6771)
* mono/mono@0bfda265b7 [ci] Report pending/failed status on GitHub for pkg/msi
* mono/mono@4682391599 [ci] Include commit hash in blob URL of pkg/msi

Diff: dcdd956e1b...59e6eb29e6

https://bugzilla.xamarin.com/show_bug.cgi?id=46473
https://bugzilla.xamarin.com/show_bug.cgi?id=59184
https://bugzilla.xamarin.com/show_bug.cgi?id=59400
https://bugzilla.xamarin.com/show_bug.cgi?id=60843

* Bump to mono/2018-04/28597809

Commit list for mono/mono:

* mono/mono@2859780927 [corlib] Make more crypto oids work on mobile profiles when not linked out
* mono/mono@61ab3f7a34 [2018-04] [sdks] Add support for building llvm unless the USE_PREBUILT_LLVM Make.config var is set. (#8148)
* mono/mono@6d5d7b57f2 [interp] support r4 (single) in stelem instruction
* mono/mono@f710b2c8e5 [llvm] Increase the inline limit when using llvm in jit mode. (#8167)
* mono/mono@e50ce8ad66 [mcs] Fixes parameter check for interface types used with default parameters
* mono/mono@b818777705 [System] Don't use http://www.mono-project.com for test (#8147)
* mono/mono@05ed822a48 [corlib] Implements CryptoConfig::AddAlgorithm on all profiles
* mono/mono@0a5fdb5841 [2018-04] [Facades] Add System.Drawing.Common on mobile only (#8129)
* mono/mono@13183bc82b [2018-04]  [corlib] Enable machine.config dependant version of CryptoConfig for net_4_x profile only (#7974)
* mono/mono@147e34f254 [mcs] Adds private protected modifier to the parser only
* mono/mono@561092003c [w32file] Fix memory leak (#8113)
* mono/mono@6cdbc561fc [sdks] Fix arguments passed to llvm on Linux (#8110)
* mono/mono@0dba58a734 [2018-04] more iOS sdk backports  (#8063)
* mono/mono@c0af9ad2cc [mcs] Fixes codegen when probing reference type expression is known to pass and pattern variable has to be created (#8086)
* mono/mono@88b6094e06 [System] Disables compiled regex (#8088)
* mono/mono@4fbdeebbe8 [mcs] Implements C# 7 digits separators (#8098)
* mono/mono@bd8731da01 [interp] use same domain as transform phase to register debug data for a method
* mono/mono@ea838e84f1 [SDKS] fix Linux (and possibly other OSes) build for Android (#8043)
* mono/mono@c3ae712ab1 [mcs] Implements C# 7.2 stackalloc span conversion in conditional expression
* mono/mono@7af9ad8cdb [interp] workaround undefined behaviour in r8 to u1 cast
* mono/mono@5921faad1c [runtime] Fix --disable-btls.
* mono/mono@4bad0d6765 [mcs] Implements C# 7.2 conditional ref expression
* mono/mono@b0aaec8e96 [interp] do not bake object reference into code stream
* mono/mono@e0b0a87e65 [sdks] Use wget in place of curl, it's installed by default on Linux (#8059)
* mono/mono@b8fb7b5e18 [System]Fix memory leak in the web stack related to `Task.Delay` (partial fix of #7356).
* mono/mono@8a20f0dfff [SDKS] Fix Android SDK build on Linux (#8024)
* mono/mono@04529e90e2 [interp] fix i4<>i8 conversion for builtin types, it was inverted (#7987)
* mono/mono@83d7bc1a0c [sdks] Fix MXE_PREFIX for XA (#8009)
* mono/mono@d1c10f8693 [sdb] Add reference counting for single step requests, they can be accessed concurrently by the single step processing code and the event request clearing code. Fixes #7137. (#7971)
* mono/mono@e9b1c90e9d [2018-04] [sdks] Add provisioning for Android SDK and NDK (#7978)

Diff: 59e6eb29e6...2859780927

* Fix linker build

* [mono] Update mono-api-info/html building instructions

* Bump mono

Commit list for mono/mono:

* mono/mono@b7015d6fd2 Merge pull request #8336 from monojenkins/backport-pr-8302-to-2018-04
* mono/mono@68f94932b7 Remove unused signal.h include in interp.c
* mono/mono@de3c8c587a [corlib] Disable failing test on XA (#8353)
* mono/mono@766778b545 Fix mono_perfcounter_instance_exists to match prototype when #ifndef DISABLE_PERFCOUNTERS.
* mono/mono@3693fb14f4 [sdks] Fix mktemp parameters (#8323)
* mono/mono@98a3dd7f34 [corlib] Fix TimeZoneInfo.Local when /usr/share/zoneinfo is a symlink (#8305)
* mono/mono@32ba15ee0b [corlib] SynchronizationContext does not work on non-root AppDomain on Android (#8297)
* mono/mono@0931f21c4c [w32file-unix] fix mistake in 8430155946c31f0f3f5f04017eebd79ac15e566d (#8300)
* mono/mono@85e13e6e2f [2018-04] [runtime] Add public API to set the pending exception. (#8279)
* mono/mono@d835b7d55f [2018-04] Fix timestamp for file copy (#8248)
* mono/mono@1d946e0f38 [sdks] Fix typo + Fix verbosity of unzip-android-archive.sh (#8244)
* mono/mono@bfa85bcaaa [msvc] Update csproj files
* mono/mono@ecd24fa6b5 Merge pull request #8204 from monojenkins/backport-pr-8202-to-2018-04
* mono/mono@eee8ff7cfc [system.net] disable some tests to unblock XI integration
* mono/mono@99a992605f [System.Net.Http] Use '*' as the host instead of '+' in the tests. Fixes xamarin/maccore#673.
* mono/mono@13aa6b7199 [eglib] GMarkup: allow all ASCII NameStartChar and NameChar except ':'
* mono/mono@3472efcdf9 [sdks] Add ANDROID_BUILD_TOOLS_DIR to differentiate it from ANDROID_BUILD_TOOLS_VERSION (#8194)
* mono/mono@1029de3147 [sdks] Fix typo (#8188)

Diff: 2859780927...b7015d6fd2

* [Make.config] Update MIN_OSX_BUILD_VERSION

Xcode 9.3 requires a Mac running macOS 10.13.2 or later.

* [mono] Update mono-api-info.exe location

* Bump to mono/2018-04/61fa43b9

Commit list for mono/mono:

* mono/mono@61fa43b909 Merge pull request #8423 from luhenry/backport-pr-8411-to-2018-04
* mono/mono@196ea0219b Merge branch '2018-04' into backport-pr-8411-to-2018-04
* mono/mono@b7db3364a0 [2018-04] Backport float32 changes. (#8398)
* mono/mono@20ae78fcc8 Merge pull request #8394 from monojenkins/backport-pr-8318-to-2018-04
* mono/mono@a5af7f28dc [arm] Fix a regression introduced by: (#8414)
* mono/mono@869e019e15 [mini] Add regression test for punting a type system check.
* mono/mono@3ddda667e1 [mini] Don't verify types if you store to a pointer byref. Workarounds #8403.
* mono/mono@599f3dd3af [watch] Align cinfo->stack_usage to 16 on watchos. (#8375)
* mono/mono@efdd8353ed [packaging] Apply F# patch that fixes #8310 (#8400)
* mono/mono@cf3e776887 [2018-04] [runtime] Add a signal handler for sigterm (#8384)
* mono/mono@38ffddd6c7 [runtime] Set the error if the class has a failure.
* mono/mono@f2943b182a [runtime] Use m_class_has_failure ().
* mono/mono@584b77e402 [runtime] Handle failed classes in mono_type_get_checked (). Fixes https://github.com/mono/mono/issues/8311.
* mono/mono@34bb601d18 [sdks] Match more closely the pre-SDKs configure flags passed to LLVM (#8381)
* mono/mono@b759166b96 [System.Net] do not use Thread for SocketTest.TestSelect1 (#8368)
* mono/mono@b7015d6fd2 Merge pull request #8336 from monojenkins/backport-pr-8302-to-2018-04
* mono/mono@68f94932b7 Remove unused signal.h include in interp.c
* mono/mono@de3c8c587a [corlib] Disable failing test on XA (#8353)
* mono/mono@766778b545 Fix mono_perfcounter_instance_exists to match prototype when #ifndef DISABLE_PERFCOUNTERS.
* mono/mono@3693fb14f4 [sdks] Fix mktemp parameters (#8323)
* mono/mono@98a3dd7f34 [corlib] Fix TimeZoneInfo.Local when /usr/share/zoneinfo is a symlink (#8305)
* mono/mono@32ba15ee0b [corlib] SynchronizationContext does not work on non-root AppDomain on Android (#8297)
* mono/mono@0931f21c4c [w32file-unix] fix mistake in 8430155946c31f0f3f5f04017eebd79ac15e566d (#8300)
* mono/mono@85e13e6e2f [2018-04] [runtime] Add public API to set the pending exception. (#8279)
* mono/mono@d835b7d55f [2018-04] Fix timestamp for file copy (#8248)
* mono/mono@1d946e0f38 [sdks] Fix typo + Fix verbosity of unzip-android-archive.sh (#8244)
* mono/mono@bfa85bcaaa [msvc] Update csproj files
* mono/mono@ecd24fa6b5 Merge pull request #8204 from monojenkins/backport-pr-8202-to-2018-04
* mono/mono@eee8ff7cfc [system.net] disable some tests to unblock XI integration
* mono/mono@99a992605f [System.Net.Http] Use '*' as the host instead of '+' in the tests. Fixes xamarin/maccore#673.
* mono/mono@13aa6b7199 [eglib] GMarkup: allow all ASCII NameStartChar and NameChar except ':'
* mono/mono@3472efcdf9 [sdks] Add ANDROID_BUILD_TOOLS_DIR to differentiate it from ANDROID_BUILD_TOOLS_VERSION (#8194)
* mono/mono@1029de3147 [sdks] Fix typo (#8188)

Diff: 2859780927...61fa43b909

* Merge branch 'master' of github.com:xamarin/xamarin-macios into mono-2018-04

* Bump to mono/2018-04/fd09fd9d

Commit list for mono/mono:

* mono/mono@fd09fd9d44 [sdks] fix $(mktemp) usage on older versions of macOS (#8521)
* mono/mono@12a2142852 [2018-04] [arm64] Interp entry trampoline (#8484)
* mono/mono@c7b237f1be [2018-04] [interp] Enter in the interp through a single generic trampoline (#8453)
* mono/mono@0ebfd3e385 Merge pull request #8471 from monojenkins/backport-pr-8306-to-2018-04
* mono/mono@50d84a3719 Only show config.log when running on bots.
* mono/mono@3e566852dc [sdks] Wrap configure to provide better output.

Diff: 61fa43b909...fd09fd9d44

* [mmp]: Reflect latest 'FtpRequestCreator' -> 'FtpWebRequestCreator' change.

* Track mono/2018-04

Commit list for mono/mono:

* mono/mono@c4492e0949 Merge pull request #8656 from monojenkins/backport-pr-8438-to-2018-04
* mono/mono@ab6962b183 [System] Add regression test for #8417.
* mono/mono@ad1a10e4a4 [System] When doing process redirect, use Console.OutputEncoding instead of Console.Out.Encoding. Fixes #8417.
* mono/mono@ecf6b88205 Bump msbuild to track mono-2018-02 (#8631)
* mono/mono@f3577389f6 Merge pull request #8595 from monojenkins/backport-pr-8580-to-2018-04
* mono/mono@9a4c8f3398 nuget-hash-extractor: Add msbuild extensions nuget version from
* mono/mono@f42debee5e nuget-hash-extractor: Add msbuild extensions nuget version from
* mono/mono@9ca82d47ee nuget-hash-extractor: Add `all` option to emit all 3 lists
* mono/mono@ce195600a3 nuget-hash-extractor: Improvements for better, deterministic output
* mono/mono@da473eaff5 nuget-hash-extractor: Sort the lists for easier reviews
* mono/mono@858aa226dc [native types] fix nfloat:NaN on arm64 JIT and interp (#8565)

Diff: fd09fd9d44...c4492e0949

* [tests] Update AttributeTest.DebuggerTypeProxy_24203

Mono now uses a different interface for DebuggerTypeProxy

* Bump to mono/2018-04/419d3136

Commit list for mono/mono:

* mono/mono@419d3136fe mkbundle interop changes
* mono/mono@97101d40aa don't fail on unsupported ipv6 in BeginConnect
* mono/mono@4785686a4d Backport "Implement Freeform Unmanaged Error" to 2018-04 (#8688)
* mono/mono@61c25c4e10 Added corlib .sources files for the ORBIS profile (#8786)
* mono/mono@99fedb1741 [aot] Fix encoding/decoding of types with custom modifiers. (#8729)
* mono/mono@32ae8ad528 Bump bockbuild to get Pango patch
* mono/mono@c1ef203b2c [corlib tests] improve ThreadPrincipalTests regarding SynchronizationContext (#8761)
* mono/mono@a7160188e5 [ci] Fix URL for apidiff/csprojdiff report
* mono/mono@ef73a4955d Bump bockbuild to pull in GTK userSpaceScaleFactor deprecation warning fix
* mono/mono@769481d834 [Mono.CSharp] Mimic the settings from System to track the feature flags, fixes GitHub #8698 (#8706)
* mono/mono@4e47c8dfdc Bump msbuild to track mono-2018-02 (#8683)

Diff: c4492e0949...419d3136fe

* [tests/mini] Enable use of C# 7.2, needed by mono test mono\mini\aot-tests.cs

* [mmp] Update dllmaps to include System.Native redirected (for System.IO.FileSystemWatcher)

* Bump Mono

* Build mmp against old api to run on non-matching mono runtime versions

* [mmp] Adjust linker sources

* Revert garbage change by last commit

* Bump mono

* Update api diff to use precompiled version to avoid problems with mismatching references

* Updates Compression Span overrides

* Fixes mtouch build

* Fixes api-diff tool for mac to look up in the right folder for 4.5 dependencies

* Update tests to work with the latest linker enhancements

* More linker tests fixes

* Bump to mono/2018-04/e129a25c

Commit list for mono/mono:

* mono/mono@e129a25c91 [System.Runtime.Serialization] Makes more APIs work for mobile
* mono/mono@543b6872fe Bump msbuild to track mono-2018-04
* mono/mono@33a9dca493 Add PowerPC configure flags for LLVM, and clean up failover linker flags (#8996)
* mono/mono@7008c37886 Merge pull request #8992 from monojenkins/backport-pr-8285-to-2018-04
* mono/mono@854f3e2952 [mono-api-html] Fix markdown diff which was reversed
* mono/mono@c54cae3345 [bitcode] Fix the generation of invalid llvm IR for some Span code.
* mono/mono@5d60a2b843 [mono-api-html] Update tool to optionally output markdown
* mono/mono@1f3334fd93 Merge pull request #8974 from mono/backport-fix-gh-8712-to-2018-04
* mono/mono@23c06f5e54 Merge pull request #8973 from monojenkins/backport-pr-8813-to-2018-04
* mono/mono@9def5c0a11 [System.IO] Dispatch events asynchronously in FileSystemWatcher.DispatchEvents()
* mono/mono@c903094761 [System.IO] Prevent the CoreFX bridge from even try-entering a monitor.
* mono/mono@462f511222 [System.IO] Finish initializing all FileSystemWatchers, not just the first one
* mono/mono@a08e664e4c [System.Windows.Forms] fix PropertyGrid
* mono/mono@2987232bc1 Merge pull request #8953 from directhex/fix-2018-llvm
* mono/mono@5ddc0c5fdf Fix building of LOADED_LLVM on Linux, from duplicate eglib linking (#8287)

Diff: b2ded076c9...e129a25c91

* More linker tests fixes

* Another linker tests update

* Fixes missing references path in update mac references

* Bumps mono

* Bump system mono to a version that has mono_runtime_set_pending_exception. Fixes mono/mono#9211.

Fixes https://github.com/mono/mono/issues/9211.

* More tests update for the linker

* Bump to mono/2018-04/f22c8b706eb

Commit list for mono/mono:

* mono/mono@f22c8b706e [loader] LoadFrom of problematic images should reprobe (correctly)
* mono/mono@9d43da2ebf [profiler] account for nullbyte in allocated buffer
* mono/mono@3737edb881 [corlib] Allow DM with an extra param to have the first one bound to null. Fixes #9033.

Diff: 07c8f25fe5...f22c8b706e

* Another mono bump
2018-06-27 10:59:59 -04:00
Sebastien Pouliot 8fcce2310f [mtouch] Warn, don't error, with a newer xcode wrt rdar://40824697 2018-06-19 17:41:22 -04:00
Sebastien Pouliot cc73932ea5 Bump for xcode10 beta 2 2018-06-19 15:26:08 -04:00
Manuel de la Pena 145237dd7a
[UserNotifications] Add Xcode 10 support. (#4290) 2018-06-19 07:39:55 +02:00
Rolf Bjarne Kvinge 5679599825
[mmp] Exec the binary in the script. (#4282)
This way the mmp process is killed if the parent process kills the process
it spawned.

It also uses one less process.
2018-06-19 07:20:02 +02:00
Rolf Bjarne Kvinge b0f8d1f0d9
[compare-commits] Fix APFS check to check for functionality, not OS version. (#4057) (#4284)
Since having a certain OS version doesn't necessarily mean that the file system will be APFS.
2018-06-18 19:26:51 +02:00
Alex Soto 3aa2167928
[IdentityLookupUI] Add bindings for Xcode 10 Beta 1 (#4281) 2018-06-15 20:46:35 -05:00
Sebastien Pouliot f9a0253e71
[videosubscriberaccount] Update for beta 1 (#4275)
This ended up enabling the framework for macOS.
2018-06-15 16:43:23 -04:00
Manuel de la Pena f77f44940e
[NaturalLanguage] Added the new framework for Xcode10. (#4236) 2018-06-14 19:21:44 +02:00
Sebastien Pouliot 5784f8daee
[authenticationservices] New iOS-only framework added in beta 1 (#4234) 2018-06-13 14:06:37 -04:00
Alex Soto 20f5d952a9
[CarPlay] Adds Xcode 10 Beta 1 Bindings (#4217)
* [CarPlay] Adds Xcode 10 Beta 1 Bindings

* Adds [DisableDefaultCtor] to CPVoiceControlTemplate

* Implement feedback
2018-06-12 12:12:20 -07:00
Sebastien Pouliot 7372f627ad
[adsupport] Update for beta 1 (#4213) 2018-06-12 05:19:16 -07:00
Sebastien Pouliot 45ae4c53ce
[tests] Add introspection tests to ensure there are native linking instructions for all frameworks. Fixes #3976 (#4194) (#4208)
* [tests] Add introspection tests to ensure there are native linking instructions for all frameworks. Fixes #3976

or a good, documented (in test code) reason for not needing it.

https://github.com/xamarin/xamarin-macios/issues/3976

* Fix failures

- static registrar failed on 32bits because one type in PhotoUI missed
  its `onlyOn64: true`

- link with the top, not the sub-frameworks

* [tvos] Fix mistakes in tvOS where some extranous types triggered unrequired/unavailable (or missing) frameworks

* [watchos] Fix watchOS frameworks mapping
2018-06-11 08:01:41 -07:00
Manuel de la Pena 9eb238cc1c
[Debugger] Copy the NSUrlSessionHandler src. Fixes #3724 (#4193)
* [Debugger] Copy the NSUrlSessionHandler src. Fixes #3724

Ensure that we do copy and pathmap the code of the NSUrlSessionHandler.

Fixes https://github.com/xamarin/xamarin-macios/issues/3724
2018-06-09 18:23:59 -07:00
Sebastien Pouliot 2d6ce7459d
Bump to use Xcode 10 beta 1 (#4179)
* Bump to use Xcode 10 beta 1

* Update Versions.plist

* Add a dependency on Xcode 9.4.

* [msbuild] Fix build with Xcode 10 beta 1. (#4182)

Many years ago (in Xcode 7 according to code comment)
Developer/Platforms/iPhoneOS.platform/Developer/usr disappeared, and we coped
by looking at Developer/usr instead (and also the subsequent code to locate
the bin directory was based on the location of the usr directory).

Developer/Platforms/iPhoneOS.platform/Developer/usr reappeared in Xcode 10
beta 1, but it seems useless (for one it doesn't contain a bin directory), so
in order to try to keep things sane don't look for this directory in Xcode 10
and instead go directly for Developer/usr (which is what we've been using as
the usr directory for years anyway).

Fixes this problem when building apps with Xcode 10 beta 1:

      /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets(626,3): error : Could not locate SDK bin directory [/Users/rolf/Projects/TestApp/test-app.csproj]

* [runtime] Build 32-bit mac executables using Xcode 9.4.

* [mtouch] Work around broken tvOS headers in Xcode 10 beta 1.

* [mtouch] Work around build problem with Apple's simd headers in Objective-C++ mode.

* Use version-agnostic paths to sdk directories.

* [tests][xtro] Add todo files (from unclassified) and adjust ignore files to avoid errors

* [macos][security] Re-enable SSL[Get|Set]AlpnProtocols. Fixes #4001 (#4022)

* [macos][security] Re-enable SSL[Get}Set]AlpnProtocols. Fixes #4001

This was fixed in macOS 10.13.4

https://github.com/xamarin/xamarin-macios/issues/4001

* [tests][monotouch-tests] Disable a few test cases (one crasher, other failures). Causes to be verified later

* [xharness] Fix permission dialog suppression in Xcode 10.

* [xharness] Ignore 32-bit macOS tests by default.

* [tests] Execute mmp regression tests with Xcode 9.4 since many of them are 32-bit and needs porting to 64-bit.

* [mmptest] Ignore 32-bit XM tests if we don't have a 32-bit-capable Xcode.

* [registrar] Add workaround for broken headers in Xcode 10 beta 1 (radar 40824697).

* [mtouch] Restrict another workaround for an Xcode 10 beta 1 bug to a specific Xcode version to remove it asap.

* [tests] Fix some protocol changes (public or not) find by introspection tests

* [tests][intro] Fix DefaultCtorAllowed failures

* [Intents] Obsolete several Intents classes in watchOS.

Several existing Intents classes have been marked as unavailable in watchOS in
the headers in Xcode 10 beta 1, and corresponding tests are now failing.

So obsolete the managed wrapper types, and fix tests accordingly.

* Fix xtro wrt previous Ietents/intro changes

* [tests] Minor adjustments to mtouch tests to work with Xcode 10.

* [msbuild] Update tests to cope with additional files produced by the Core ML compiler.

* [msbuild] Xcode 10 doesn't support building watchOS 1 apps, so show a clear error message explaining it.

Also update tests accordingly.

* [coreimage] Stub new filters and exclude ?removed? ones from tests

* Update GameplayKit and SpriteKit NSSecureCoding _upgrade_ and fix other non-public cases (in tests)

* [tests] Ignore some GameKit selectors that don't respond anymore (but seems to be available, at least in header files)

* [tests] Fix intro 32bits testing for filters resutls

* [msbuild] Slightly change error message to be better English.
2018-06-08 18:45:24 -07:00
Sebastien Pouliot 5ec8b12dc6
[tests] Add introspection tests to ensure there are native linking instructions for all frameworks. Fixes #3976 (#4194) (#4200)
* [tests] Add introspection tests to ensure there are native linking instructions for all frameworks. Fixes #3976

or a good, documented (in test code) reason for not needing it.

https://github.com/xamarin/xamarin-macios/issues/3976

* Fix failures

- static registrar failed on 32bits because one type in PhotoUI missed
  its `onlyOn64: true`

- link with the top, not the sub-frameworks

* [tvos] Fix mistakes in tvOS where some extranous types triggered unrequired/unavailable (or missing) frameworks

* [watchos] Fix watchOS frameworks mapping
2018-06-08 15:27:03 -07:00
Sebastien Pouliot 3ef8e41d49
[tests] Add introspection tests to ensure there are native linking instructions for all frameworks. Fixes #3976 (#4194)
* [tests] Add introspection tests to ensure there are native linking instructions for all frameworks. Fixes #3976

or a good, documented (in test code) reason for not needing it.

https://github.com/xamarin/xamarin-macios/issues/3976

* Fix failures

- static registrar failed on 32bits because one type in PhotoUI missed
  its `onlyOn64: true`

- link with the top, not the sub-frameworks

* [tvos] Fix mistakes in tvOS where some extranous types triggered unrequired/unavailable (or missing) frameworks

* [watchos] Fix watchOS frameworks mapping
2018-06-08 10:00:48 -07:00
Manuel de la Pena c4a64ad7d9 [Compression] Ensure we use the correct linking flags for older versions. Fixes #4129. (#4169) (#4184)
Libcompresison was added after iOS 9.0, TvOS 9.0, MacOS 10.11 and watchOS
2.0. We want to use weak in those older platforms.

Fixes issue https://github.com/xamarin/xamarin-macios/issues/4129
2018-06-05 14:56:49 -04:00
Manuel de la Pena aa7c95eca7
[Compression] Ensure we use the correct linking flags for older versions. Fixes #4129. (#4169)
* [Compression] Ensure we use the correct lonking flags for older versions. Fixes #4129.

Libcompresison was added after iOs 9.0, TvOS 9.0, Mac 10.11 and Watch
2.0. We want to use weak in those older platforms.

Fixes issue https://github.com/xamarin/xamarin-macios/issues/4129
2018-06-05 09:12:27 -07:00
Sebastien Pouliot a56eaf80cc
Bump mono to head of 2018-02 + fix mtouch/mmp (#4171) (#4181)
Commit list for mono/mono:

* mono/mono@1c24c158b0 [bitcode] Fix the generation of invalid llvm IR for some Span code.
* mono/mono@a49a68c6d7 [interp] Fix native to interp transition (#8957)
* mono/mono@92e11812f4 [System.Runtime.Serialization] Makes more APIs work for mobile
* mono/mono@260676f948 Bump API snapshot submodule
* mono/mono@eefdf4ed31 Bump external/cecil to b6c50e3
* mono/mono@0754926394 [2018-02] Finalize merp integration (#8869)

Diff: 7bdb7dd765...1c24c158b0

* [mtouch][mmp] Have CoreResolver check for the new SymbolsNotMatchingException from Cecil

* [tests] Rebuild MX4175 in a separate .app to avoid debug symbol warnings

The newer cecil version is better at detecting incorrect .mdb, like the
test is using, resulting in warnings since the 2nd build (same location)
was done without symbols (so old ones were loaded).

Stale debug symbols is not the goal of the MX4175 test. Rebuilding the
.app in another directory solves the extra warning issue.
2018-06-05 11:54:27 -04:00
Sebastien Pouliot e615ddf14d
Bump mono to head of 2018-02 + fix mtouch/mmp (#4171)
Commit list for mono/mono:

* mono/mono@1c24c158b0 [bitcode] Fix the generation of invalid llvm IR for some Span code.
* mono/mono@a49a68c6d7 [interp] Fix native to interp transition (#8957)
* mono/mono@92e11812f4 [System.Runtime.Serialization] Makes more APIs work for mobile
* mono/mono@260676f948 Bump API snapshot submodule
* mono/mono@eefdf4ed31 Bump external/cecil to b6c50e3
* mono/mono@0754926394 [2018-02] Finalize merp integration (#8869)

Diff: 7bdb7dd765...1c24c158b0

* [mtouch][mmp] Have CoreResolver check for the new SymbolsNotMatchingException from Cecil

* [tests] Rebuild MX4175 in a separate .app to avoid debug symbol warnings

The newer cecil version is better at detecting incorrect .mdb, like the
test is using, resulting in warnings since the 2nd build (same location)
was done without symbols (so old ones were loaded).

Stale debug symbols is not the goal of the MX4175 test. Rebuilding the
.app in another directory solves the extra warning issue.
2018-06-04 19:44:40 -04:00
Sebastien Pouliot 39b69da10b
Update XML references wrt XI 11.12 (d15-7 with xcode9.4 support) and bump to 11.13 (#4163) 2018-06-01 08:51:35 -04:00
Sebastien Pouliot 30d644d5a1
Merge pull request #4157 from VincentDondain/master-merge-xcode9.4
Merge xcode9.4 into master
2018-05-31 08:42:31 -04:00
Alex Soto 070c271def
[Linker] Remove bundled mscorlib.xml descriptor from mmp and mtouch (#3772)
* [Linker] Remove bundled mscorlib.xml descriptor from mmp and mtouch

This fixes xamarin/xamarin-macios#3749

We currently process both mscorlib.xml descriptors[1] from the mtouch/mmp
bundle and also the one contained in mscorlib.dll as resource, we are now removing
the descriptor bundled inside mtouch and mmp in favour of the one bundled in
mscorlib.dll.

Source descriptors files for diff:

mono (master): ea4274f2eb/mcs/class/corlib/LinkerDescriptor/mscorlib.xml
XI (master): da6db5f660/tools/linker/Descriptors/mscorlib.xml
XM (master): da6db5f660/tools/mmp/linker/Descriptors/mscorlib.xml

Diffs:

Mono - XI descriptor diff: https://gist.github.com/dalexsoto/f0b1c9c66bf50edf8198063ec039a17b
Mono - XM descriptor diff: https://gist.github.com/dalexsoto/06b253a6743d366a4b9addc21a1e2c2a

[1]: https://github.com/xamarin/xamarin-macios/issues/3749#issuecomment-373770268

Also Removed mscorlib.xml files and removed unused var in makefiles
2018-05-30 17:14:49 -05:00
Vincent Dondain 908b540e61
[apidiff] Add build reminder to README 2018-05-30 16:33:13 -04:00
Vincent Dondain 67d944c018 Revert "Update API diffs to d15-7 with xcode 9.4 support"
Sebastien will provide the xml files.

This reverts commit bef72d2286.
2018-05-30 16:20:44 -04:00
Sebastien Pouliot 847f4c1d8d
[apidiff] Update XML references to produce the API diff for xcode9.4 support (#4160) 2018-05-30 14:12:36 -04:00
Vincent Dondain bef72d2286 Update API diffs to d15-7 with xcode 9.4 support 2018-05-30 09:23:47 -04:00
Sebastien Pouliot 64fece5f0a
Merge pull request #4026 from spouliot/d15-7-xcode94
Add xcode9.4 support into 15.7
2018-05-29 17:55:31 -04:00
Vincent Dondain 4892ffc6ec Merge branch 'xcode9.4' into master 2018-05-29 14:26:32 -04:00
Sebastien Pouliot 2d93bbc927
[mtouch][mmp] Cache ReaderParameters instances in CoreResolver (#4151)
In my test project 969828 instances (67MB) of `ReaderParameters` were
created by `CoreResolver.Resolve`, which always allocated a new one.

Since we already create them, most of the time*, we can reuse the
instances when additional members requires resolving.

* only 14 additional instances are now required
2018-05-29 13:55:57 -04:00
Sebastien Pouliot b2e6aba41c
[mtouch][mmp] Add better easier, more complete timestamps to see where time is spent (#4150)
* Share the stopwatch code between `mtouch` and `mmp`;

* Add more details on linker steps. Sadly substeps are executed on the
  metadata so they can't be reported individually;

* Add a few places where timestamps where missing to get better precision
  on the linking part;
2018-05-29 13:08:34 -04:00
Rolf Bjarne Kvinge 889161a084
[apidiff] Fix detection of no changes. (#4139)
We write 'No change detected' to [platform]-api-diff.html, which means that
checking for an empty file to detect no changes when generating the container
api-diff.html doesn't work as intended.

So change the logic to check for the 'No change detected' string instead.
2018-05-29 11:15:51 -04:00
Sebastien Pouliot 68151d61c9
[mtouch] Cache result of IsArchEnabled in targets and application (#4149)
On my test project we were calling `IsArchEnabled` 334,713 times which
made the enumerator called enough to show on the memory usage (13MB),
even if each instance is only 40 bytes.

Caching the result makes the method called only 5 times.
2018-05-29 11:14:10 -04:00
Manuel de la Pena 4e00419814
[Compression] Ensure that we do link against libcompression. (#4091)
We need to pass libcrompession in the linking flags, which was not
present and makes the build fail.
2018-05-16 09:04:59 -04:00
Rolf Bjarne Kvinge a88a79cfc0
[mtouch/mmp] Handle invalid types in BlockProxy attributes better. Fixes #4072. (#4073)
* [mtouch/mmp] Handle invalid types in BlockProxy attributes better. Fixes #4072.

BlockProxy attributes may have types we don't expect, so handle those cases
gracefully by showing a warning when we encounter them:

    testApp.cs(11): warning MT4175: The parameter 'completionHandler' in the method 'Issue4072Session.CreateDataTask(Foundation.NSUrl,Foundation.NSUrlSessionResponse)' has an invalid BlockProxy attribute (the type passed to the attribute does not have a 'Create' method).

instead of an ugly MT0000:

    MTOUCH : error MT0000: Unexpected error - Please file a bug report at http://bugzilla.xamarin.com
    System.InvalidOperationException: Sequence contains no matching element
      at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] predicate) [0x00012] in /Users/builder/jenkins/workspace/build-package-osx-mono/2017-12/external/bockbuild/builds/mono-x64/external/corefx/src/System.Linq/src/System/Linq/First.cs:30
      at Registrar.StaticRegistrar.GetBlockProxyAttributeMethod (Mono.Cecil.MethodDefinition method, System.Int32 parameter) [0x00020] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:4121
      at Registrar.StaticRegistrar.GetBlockWrapperCreator (Registrar.Registrar+ObjCMethod obj_method, System.Int32 parameter) [0x00011] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:4065
      at Registrar.StaticRegistrar.Specialize (Registrar.AutoIndentStringBuilder sb, Registrar.Registrar+ObjCMethod method, System.Collections.Generic.List`1[T] exceptions) [0x0216b] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:3683
      at Registrar.StaticRegistrar.Specialize (Registrar.AutoIndentStringBuilder sb) [0x00f1e] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:2963

Fixes #4072.

* [docs] Improve text for MT4175.

* [registrar] Comment some code.
2018-05-11 14:42:27 +02:00
Rolf Bjarne Kvinge cd02f146d7
[compare-commits] Fix APFS check to check for functionality, not OS version. (#4057)
Since having a certain OS version doesn't necessarily mean that the file system will be APFS.
2018-05-09 14:36:25 +02:00
Rolf Bjarne Kvinge 408d357468 [mtouch] Take into account the contents of response files when determining whether the cache is valid or not. Fixes #4033. (#4032) (#4051) 2018-05-08 17:27:05 -04:00
Bernhard Urban 394117885c
[runtime] add support for mono runtime interpreter (#3058)
* [runtime] build interp-, icalltable- and ilgen libraries so they can be consumed in interpreter configuration

* [mtouch] add --interpreter configuration support

* [xharness] Add support for removing defines from cloned project files.

* [xharness] Run monotouch-test, mscorlib and mini tests with the interpreter too.

They're ignored for now, which means we won't run them on the bots.

* [mtouch] We're using dlsym when using the interpreter.

* [xharness] enable mini regression tests with interpreter on CI
2018-05-04 23:59:31 +02:00
Rolf Bjarne Kvinge c2e543adbf
[mtouch] Take into account the contents of response files when determining whether the cache is valid or not. Fixes #4033. (#4032)
* [mtouch] Take into account the contents of response files when determining whether the cache is valid or not.

* Correctly ignore new test on macOS.
2018-05-04 11:29:50 +02:00
Sebastien Pouliot 9208e9a0a4 Add xcode9.4 support into 15.7
The PR is not final and cannot be merged until the final Xcode 9.4
release from Apple is available.

Since there's no macOS specific changes (at least up to beta 2) we can
directly merge into the _normal_ milestone branch and avoid having
separate branches to maintain for XI and XM (until 15.8).
2018-05-03 13:55:11 -04:00
Sebastien Pouliot ddd5046481
[apidiff] Update XML references from 15.7 branch (#4025) 2018-05-03 08:48:57 -04:00