Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-10-12mono_method_signature to mono_method_signature_internal to skip GC mode ↵Jay Krell
machinery (#11080)
2018-10-12[2018-08] Bump msbuild (#11098)monojenkins
2018-10-12Build BTLS on Windows, cygwin/mingw. (#9306)Martin Baulig
* Build BTLS on Windows. * Quote more cmake paths Should fix issue on Windows build where cmake is installed in C:\Program Files * Fix btls cygwin x86, x64 Windows build. NOTE, cygwin btls build depends on cygwin installed cmake, update cygwin install to include cmake before building. * Disable BTLS as default for Windows builds.
2018-10-12[interp] Implement interpreter entry trampolines on amd64 (#10978)Vlad Brezae
* [interp] Avoid unnecessary allocations when pinvoke void functions * [amd64] Refactor interp pinvoke context computation * [amd64] Interp trampoline for interpreter entry * [aot] Don't include interp_in_wrapper when we use entry trampoline These wrappers take a lot of space in the image.
2018-10-12[exceptions] continue program execution when mapping of stack overflow guard ↵Bernhard Urban
page fails (#11064) * [exceptions] continue program execution when mapping of stack overflow guard page fails Related: https://github.com/mono/mono/issues/10415 * turn comment into warning * fix mono_gc_register_altstack call when no guard page is mapped
2018-10-12[tests] lower recursion depth of PerformNoPinAction (#11065)Bernhard Urban
so it doesn't overflow the stack when running on macOS with `clang -O0`.
2018-10-11x86 mono_arch_get_patch_offset: add support for 0xe9/jmp eip+32b. (#11089)Jay Krell
I don't know what the specific code is or what changed, etc. This addresses Mac/x86: https://jenkins.mono-project.com/job/test-mono-pull-request-i386-osx/15364/parsed_console/log.html ```Unable to compile method 'int Tests:calli_sig_check_2 ()' due to: 'Invalid IL code in Tests:calli_sig_check_2 (): IL_000b: calli 0x11000044``` which then fails an assert and fails overall. CI goes deep into bash w/o echoing commands but a repro is: cd mono/mini MONO_PATH=./../../mcs/class/lib/net_4_x lldb -- ./mono --aot iltests.exe The code is meant to be invalid, and meant to raise an exception, which is catchable/resumable (at least in the JIT case where executing IL the first time, can raise an exception while caller is running, vs. AOT where the codegen all happens offline -- leaving what? A note made at AOT time that calling the code should raise an exception?). It isn't meant to fail an assert in either case.
2018-10-11[crash] Crash Reporter V2 (#10532)Alexander Kyte
This change set represents a major set of changes to the crash reporting mechanism. 1) Coordination involving mandatory timeouts and signals have been changed greatly, to instead use semaphores and to end waiting as soon as possible. 2) Dumping of unmanaged symbols outside of mono has been made possible. Embedders that want to get information on frames outside of mono-sgen can register the library with an icall. This carefully preserves both privacy (opt-in) and resiliency (can't crash/lose more info when misused). 3) The dumper has moved from a workflow that kills the runtime after a long delay into one that can dump individual threads or the entire runtime in a prompt manner. The runtime doesn't die at the end of the dump, but allows threads to resume what they were doing and returns to the caller. 4) This has allowed for the addition of a number of tests that stress both parallel and concurrent dumping of threads. These run fairly quickly, and leave the runtime in a state to continue testing. 5) With this lightweight testing setup created, a long burn-in testing period was done. Places we were using locks or trying to malloc resulted in crashes or hangs. After making the needed changes, it managed to run the dumping tests in a loop for a whole weekend on a Linux x64 configuration without any problems. This has resulted in a dumper with dramatically improved stability and performance.
2018-10-11[wasm] Fix the build. (#11063)Zoltan Varga
2018-10-11mono_class_enum_basetype to mono_class_enum_basetype_internal to skip GC ↵Jay Krell
mode machinery. (#11079)
2018-10-11mono_class_is_assignable_from to mono_class_is_assignable_from_internal to ↵Jay Krell
skip GC mode machinery (#11081) FIXME mono_class_is_assignable_from_checked
2018-10-11Replace mono_object_get_class with mono_object_class to avoid gc ↵Jay Krell
transitions. (#11077)
2018-10-11[runtime] Fixup stacktrace creation on s390x (#11073)Alexander Kyte
* [runtime] Fix mismatched parenthesis on exc-s390x * [runtime] Fix mismatched static function type declaration on s390x * [runtime] Fixup b7c18caf0c for s390x
2018-10-10[runtime] Fix internal llvm (#11074)Alexander Kyte
The makefile uses $(dir $<) which has `../` and so refers to `llvm/external/llvm` rather than `external/llvm` now that we're using llvm from a submodule in external/
2018-10-10Merge pull request #11053 from BrzVlad/fix-interp-static-fieldmonojenkins
[interp] Optimize static field access Do most of the work on transform side and include the field address in the instruction stream. We need to run cctor at runtime to preserve expected order. This makes static field access 4 times faster. <!-- Thank you for your Pull Request! If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed. Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number -->
2018-10-10Example experiment "null"Aleksey Kliger
2018-10-10Add --enable-experiment= and MONO_EXPERIMENT= supportAleksey Kliger
Experiments are unsupported and provide no stability or backward compatability guarantees.
2018-10-10[build] Unify bootstrap profiles (#11024)Marek Safar
* [build] Unify bootstrap profiles We can now rely on build only as we have reliable monolite and package compilers * Fixes genproj dependencies * [csproj] Update project files
2018-10-10[Reflection] Unify exception param nameMaxim Lipnin
2018-10-10[Reflection] Handle overflow exception on constructor invocation (#11028)Maxim Lipnin
It allows to re-enable [Invoke_OneDimensionalArray_NegativeLengths_ThrowsOverflowException](https://github.com/mono/corefx/blob/master/src/System.Reflection/tests/ConstructorInfoTests.cs#L96) test and enable [TestInvoke_1DArrayWithNegativeLength](https://github.com/mono/corefx/blob/master/src/System.Runtime/tests/System/Reflection/ConstructorInfoTests.cs#L79) test. Fixes https://github.com/mono/mono/issues/10024
2018-10-10[csproj] Update project filesmonojenkins
2018-10-10Bump API snapshot submodulemonojenkins
2018-10-10Disable GetTypeTests.csMaxim Lipnin
2018-10-10[Reflection] CoreFX import for TypeDelegator typeMaxim Lipnin
2018-10-10Always use InvariantCulture calendars in X509Certificate on MobileAleksey Kliger
Allow the linker to remove UmAlQuraCalendar and HijriCalendar on mobile devices Match the CoreFX X509Certificate changes: https://github.com/mono/corefx/commit/4eb1fc2abd2ffa70e402d22415d0209b21725a10 Fixes https://github.com/mono/mono/issues/10448
2018-10-09[icalls] Declare all icalls correctly. (#11019)Jay Krell
It is hacky to have to avoid includes in order to have conflicting/incorrect declarations. And hacky to use extern "C" when the reason is to have incorrect prototypes. It is arguably hacky to suppress the gcc warning -- granted, the functions are never called, and merely their addresses taken and put into void* -- arguably gcc's warning is too strict and should only trigger for calls or taking address into a non-void*. Arguably the declarations should be moved around the tree. Perhaps we should omit the prototypes from C++.
2018-10-09[icall] Add InOut handles. Use InOut handles and Out handles more correctly. ↵Jay Krell
(#11042) This is only an unenforced naming convention.
2018-10-09[arm64] Pass small stack args correctly on linux. Fixes pinvoke.exe with ↵Zoltan Varga
llvm+full aot. (#10674) * [arm64] Pass small stack args correctly on linux. Fixes pinvoke.exe with llvm+full aot. * Bump llvm.
2018-10-09Bump corefxBernhard Urban
Commit list for mono/corefx: * mono/corefx@17e9259f14 [tests] add finalizer helper to avoid false pinning (#156) * mono/corefx@4eb1fc2abd Remove calendary dependency from X509Certificate Diff: https://github.com/mono/corefx/compare/411def5f278956f3c514c02ab76d9bb89428fef7...17e9259f147d9b4b32394d249bf2b7aa1673e406
2018-10-09[wasm] AOT work. (#10989)Zoltan Varga
* [llvm] Fix the icall signature of a few llvm EH icalls. * [wasm] Disable com/remoting in the linker. * [wasm] Enable direct icalls. * [wasm] Generate the configuration into a config.js file instead of rewriting the runtime.js file. * [wasm] Enable icall symbol map in the cross compiler, compile the device runtime with -fexceptions. * [wasm] Rename runtime-tests.g.js -> runtime-tests.js. * [wasm] Add mono_wasm_assembly_get_entry_point () function to obtain the entry point of an assembly. * [wasm] Add profiler support to the packager. * [wasm] Add support for running a normal .net executable to the test runner.
2018-10-09[interp] Optimize static field accessVlad Brezae
Do most of the work on transform side and include the field address in the instruction stream. We need to run cctor at runtime to preserve expected order. This makes static field access 4 times faster.
2018-10-09[sdks] Add cmake toolchain file for LLVM MXE builds (#11008)Ludovic Henry
We couldn't compile llvmwin{32,64} on Linux because we would try to use {i686,x86_64}-w64-mingw-cmake but it wouldn't exist.
2018-10-09Depend on all *_test.dll.sources for `make run-test` (#11030)Egor Bogatov
* depend on all test.sources for `make run-test` * fix typo (to exclude xunit tests)
2018-10-09[llvm] Add as a submodule (#11010)Ludovic Henry
2018-10-09AOT: use 32 bit flags for as/ld when targetting x86 on linux (#11032)Alexander Köplinger
So it works when running the 64bit as/ld on the host with a 32bit mono binary.
2018-10-08[Coop] Convert mono_object_clone_checked, mono_object_new_from_token, ↵Jay Krell
mono_class_create_runtime_vtable, mono_runtime_object_init_checked. (#11018) * [coop] Optimize mono_runtime_object_init_handle -- don't pin non-valuetypes. * [coop] Convert mono_runtime_object_init_checked to call mono_runtime_object_init_handle. * [coop] Convert mono_class_create_runtime_vtable. * [Coop] Convert mono_object_new_from_token. * [coop] Convert mono_object_clone_checked.
2018-10-08[mcs] Fix dependencies on ↵Ludovic Henry
`mcs/class/lib/<Profile>/tests/<Profile>_corlib_test.dll.nunitlite.config` (#11029) The directory mcs/class/lib/wasm/tests wouldn't necessarily be created before we would try to copy the file to it.
2018-10-08[wasm] Unbreak the debugger and harden it against bad assemblies. (#11011)Rodrigo Kumpera
* [wasm] Harden the debugger against invalid breakpoints. This happens when you reload a page and the old BPs land in now invalid code regions. * Add node support to library_mono.js * [wasm] Correctly register pdb files.
2018-10-08[sdks] Build Android SDKs archive in Debug configuration on master builds ↵Ludovic Henry
(#11007) * [sdks] Build Android SDKs archive in Debug configuration on master builds * [sdks] Drop `product-` prefix from Android and iOS SDKs CI_TAGS parameters
2018-10-08[llvm] Fix the loaded llvm build. (#11014)Zoltan Varga
2018-10-08Significant disambiguation between host and target. (#10969)Jay Krell
2018-10-08[icalls] Change gboolean to MonoBoolean. (#11017)Jay Krell
2018-10-08Mitigation for spawn FD closing taking forever with a big FD limit (#10761)Calvin Buckley
* Mitigation for spawn FD closing taking forever with a big FD limit On systems with a large file descriptor limit, Mono takes a very long time to spawn a new process; with informal testing on the AIX CI builder, (with a POWER7) it took ~30 minutes. This is obviously very undesirable, but hand our is forced - libraries the user might be calling could be creating non-CLOEXEC files we're unaware of. As such, we started from the FD limit and worked our way down until we hit stdio. Using APIs such as posix_spawn aren't desirable as we do some fiddling with the child before we exec; and even then, closing FDs with posix_spawn relies on non-standard file actions like Solaris' addclosefrom not present on many systems. (All of this is unnecessary on Windows, of course.) This presents an alternative way (currently only implemented on AIX but with notes how for other platforms) to try to close the child's loose FDs before exec; by trying to get the highest number FD in use, then work our way down. In the event we can't, we simply fall back to the old logic. See #6555 for a discussion and the initial problem being mitigated. * Use an another strategy of closing only known to be open handles ...on FreeBSD and AIX. Use the kinfo_getfiles library call on FreeBSD and only close what's safe to close. On AIX, use the third and fourth arguments to getprocs to check what's open. However, the array to get all the handles takes 1 MB, so allocate it on the heap; like what kinfo_getfiles does. We don't need to free these as the child will exec or exit, which blows it all away. The previous strategy from previous commit is still used and on AIX, enhanced. * Add Linux strategy to fork FD close Tested on WSL, shows benefits with big FD ulimit.
2018-10-08[csproj] Update project filesmonojenkins
2018-10-08Bump linkerMarek Safar
2018-10-08[linker] Adds more testsMarek Safar
2018-10-08Bump API snapshot submodulemonojenkins
2018-10-08[build] Fixes Mono.Cecil boostrap dependencyMarek Safar
2018-10-08Bump cecilMarek Safar
2018-10-07[build] Update XI facades to build against reference assemblies (#10980)Marek Safar
Clean up facades to build remaining ones in parallel