mono.git
9 years ago[sgen] Implement a simple thread pool and do concurrent sweep with it.
Mark Probst [Fri, 13 Feb 2015 17:58:02 +0000 (09:58 -0800)]
[sgen] Implement a simple thread pool and do concurrent sweep with it.

We cannot start threads during stop-the-world pauses (some thread APIs,
including pthreads, can deadlock), and we want to do marking and sweeping
with the same threads.  This new thread pool facility will allow that.

9 years ago[sgen] Fix a comment.
Mark Probst [Thu, 12 Feb 2015 22:29:43 +0000 (14:29 -0800)]
[sgen] Fix a comment.

9 years ago[sgen] Don't unnecessarily compute object size index.
Mark Probst [Wed, 11 Feb 2015 21:08:10 +0000 (13:08 -0800)]
[sgen] Don't unnecessarily compute object size index.

9 years ago[sgen] Only do a debug block iteration on a higher assert level.
Mark Probst [Wed, 11 Feb 2015 20:45:10 +0000 (12:45 -0800)]
[sgen] Only do a debug block iteration on a higher assert level.

9 years ago[sgen] Comments.
Mark Probst [Wed, 11 Feb 2015 20:08:19 +0000 (12:08 -0800)]
[sgen] Comments.

9 years ago[sgen] Don't repeat code and don't load multiple times.
Mark Probst [Wed, 11 Feb 2015 20:05:50 +0000 (12:05 -0800)]
[sgen] Don't repeat code and don't load multiple times.

9 years ago[sgen] Rename a function to better reflect what it does.
Mark Probst [Wed, 11 Feb 2015 20:01:33 +0000 (12:01 -0800)]
[sgen] Rename a function to better reflect what it does.

9 years ago[sgen] `sweep_block()` returns whether it actually swept.
Mark Probst [Wed, 11 Feb 2015 20:00:52 +0000 (12:00 -0800)]
[sgen] `sweep_block()` returns whether it actually swept.

9 years ago[sgen] Lock-free block array.
Mark Probst [Wed, 11 Feb 2015 00:38:41 +0000 (16:38 -0800)]
[sgen] Lock-free block array.

We tag pointers to blocks that are currently being processed.  Those
must not even be dereferenced by other threads because the sweep
thread might free them at any point.

9 years ago[sgen] Clean up FIXMEs.
Mark Probst [Tue, 10 Feb 2015 23:25:46 +0000 (15:25 -0800)]
[sgen] Clean up FIXMEs.

9 years ago[sgen] Just one iteration over the blocks at start of major collection.
Mark Probst [Tue, 10 Feb 2015 19:07:50 +0000 (11:07 -0800)]
[sgen] Just one iteration over the blocks at start of major collection.

9 years ago[sgen] Remove dead macros.
Mark Probst [Mon, 9 Feb 2015 22:14:31 +0000 (14:14 -0800)]
[sgen] Remove dead macros.

9 years ago[sgen] Assert world is stopped and not sweeping when iterating blocks.
Mark Probst [Mon, 9 Feb 2015 22:14:18 +0000 (14:14 -0800)]
[sgen] Assert world is stopped and not sweeping when iterating blocks.

9 years ago[sgen] Whenever we wait for sweep, help the sweeping thread.
Mark Probst [Fri, 6 Feb 2015 23:02:31 +0000 (15:02 -0800)]
[sgen] Whenever we wait for sweep, help the sweeping thread.

And since we always wait for the sweep now we can do iterations over
the blocks without taking the lock.

9 years ago[sgen] Simplify allowance logic.
Mark Probst [Fri, 6 Feb 2015 01:03:33 +0000 (17:03 -0800)]
[sgen] Simplify allowance logic.

Don't use the difference to the last collection, but just calculate the maximum heap
size and trigger a collection when it's reached.

9 years ago[sgen] Count major sections before/after sweep correctly.
Mark Probst [Thu, 5 Feb 2015 23:44:47 +0000 (15:44 -0800)]
[sgen] Count major sections before/after sweep correctly.

9 years ago[sgen] `num_major_sections` must be updated atomically.
Mark Probst [Thu, 5 Feb 2015 23:43:41 +0000 (15:43 -0800)]
[sgen] `num_major_sections` must be updated atomically.

It's updated from nursery collections and from the sweep thread concurrently.

9 years ago[sgen] Write binary protocol for card scan before scanning the card.
Mark Probst [Thu, 5 Feb 2015 21:15:09 +0000 (13:15 -0800)]
[sgen] Write binary protocol for card scan before scanning the card.

9 years ago[sgen] Don't iterate over block array while it's being compacted.
Mark Probst [Fri, 30 Jan 2015 22:18:15 +0000 (14:18 -0800)]
[sgen] Don't iterate over block array while it's being compacted.

9 years ago[sgen] Remove dead parameter to `sweep_block()`.
Mark Probst [Thu, 29 Jan 2015 21:59:11 +0000 (13:59 -0800)]
[sgen] Remove dead parameter to `sweep_block()`.

9 years ago[sgen] Allow card table scanning to do block checking work.
Mark Probst [Thu, 29 Jan 2015 21:09:38 +0000 (13:09 -0800)]
[sgen] Allow card table scanning to do block checking work.

9 years ago[sgen] Fix initial block state.
Mark Probst [Thu, 29 Jan 2015 20:40:02 +0000 (12:40 -0800)]
[sgen] Fix initial block state.

New blocks need to be swept if they're allocated during a non-concurrent major
collection or while a concurrent major collection is running.

9 years ago[sgen] Comments.
Mark Probst [Thu, 29 Jan 2015 20:38:41 +0000 (12:38 -0800)]
[sgen] Comments.

9 years ago[sgen] Make function for block checking wait for another potential thread.
Mark Probst [Thu, 29 Jan 2015 20:35:41 +0000 (12:35 -0800)]
[sgen] Make function for block checking wait for another potential thread.

9 years ago[sgen] Fix M&S heap consistency checks.
Mark Probst [Thu, 29 Jan 2015 20:30:29 +0000 (12:30 -0800)]
[sgen] Fix M&S heap consistency checks.

9 years ago[sgen] Set the block state to CHECKING with the allocated blocks lock held.
Mark Probst [Mon, 26 Jan 2015 18:18:32 +0000 (13:18 -0500)]
[sgen] Set the block state to CHECKING with the allocated blocks lock held.

9 years ago[sgen] Traverse block array from high to low in sweep thread.
Mark Probst [Mon, 26 Jan 2015 18:12:39 +0000 (13:12 -0500)]
[sgen] Traverse block array from high to low in sweep thread.

The nursery collector requires that sweeping has finished, and instead
of waiting it will cooperate with the sweep thread to finish more
quickly.  The sweep thread will traverse the block array from high
indexes to low ones while the nursery collector will go from low to
high.  They will contend only very briefly when they meet somewhere in
the middle.

9 years ago[sgen] Factor out function that checks individual blocks for sweeping.
Mark Probst [Mon, 26 Jan 2015 17:46:38 +0000 (12:46 -0500)]
[sgen] Factor out function that checks individual blocks for sweeping.

9 years ago[sgen] Binary protocol entries for block alloc/free/change state.
Mark Probst [Mon, 26 Jan 2015 17:26:55 +0000 (12:26 -0500)]
[sgen] Binary protocol entries for block alloc/free/change state.

9 years ago[sgen] Card clearing and moving to shadow cards don't require sweep.
Mark Probst [Mon, 26 Jan 2015 17:22:29 +0000 (12:22 -0500)]
[sgen] Card clearing and moving to shadow cards don't require sweep.

9 years ago[sgen] Concurrent sweep
Mark Probst [Thu, 22 Jan 2015 22:08:46 +0000 (17:08 -0500)]
[sgen] Concurrent sweep

9 years ago[sgen] Replace `swept` with more detailed block state.
Mark Probst [Thu, 22 Jan 2015 00:16:41 +0000 (16:16 -0800)]
[sgen] Replace `swept` with more detailed block state.

9 years ago[sgen] On forced major collections, free blocks.
Mark Probst [Fri, 27 Feb 2015 21:51:18 +0000 (13:51 -0800)]
[sgen] On forced major collections, free blocks.

9 years ago[sgen] Make memory governor ready for concurrent sweep.
Mark Probst [Thu, 22 Jan 2015 00:06:54 +0000 (16:06 -0800)]
[sgen] Make memory governor ready for concurrent sweep.

9 years ago[sgen] Sweep state instead of `have_swept`.
Mark Probst [Wed, 21 Jan 2015 23:44:05 +0000 (15:44 -0800)]
[sgen] Sweep state instead of `have_swept`.

9 years ago[sgen] Make slots free list lock-free.
Mark Probst [Wed, 21 Jan 2015 23:29:05 +0000 (15:29 -0800)]
[sgen] Make slots free list lock-free.

9 years ago[sgen] Guard allocated block array with a mutex.
Mark Probst [Wed, 21 Jan 2015 23:14:46 +0000 (15:14 -0800)]
[sgen] Guard allocated block array with a mutex.

Both the concurrent sweep thread as well as the nursery collector will
need access to the block array.  Until we've made that lock-free,
we're simply using a lock.

9 years ago[sgen] Function for querying whether world is stopped.
Mark Probst [Wed, 21 Jan 2015 23:17:04 +0000 (15:17 -0800)]
[sgen] Function for querying whether world is stopped.

9 years ago[sgen] Split sweeping into three parts: start, block loop, finish.
Mark Probst [Tue, 28 Oct 2014 19:38:00 +0000 (12:38 -0700)]
[sgen] Split sweeping into three parts: start, block loop, finish.

9 years ago[System.Data] Fix 'make dist'
Alexander Köplinger [Thu, 2 Apr 2015 22:23:26 +0000 (00:23 +0200)]
[System.Data] Fix 'make dist'

9 years agoMerge pull request #1680 from schani/feature-profiler-exception-handling
Zoltan Varga [Thu, 2 Apr 2015 21:33:07 +0000 (17:33 -0400)]
Merge pull request #1680 from schani/feature-profiler-exception-handling

[profiler] Add missing code buffers for exception handling.

9 years ago[profiler] Add missing code buffers for exception handling.
Mark Probst [Tue, 24 Feb 2015 01:11:28 +0000 (17:11 -0800)]
[profiler] Add missing code buffers for exception handling.

9 years ago[llvm] Emit division by zero/overflow checks for div/rem opcodes inside eh clauses...
Zoltan Varga [Thu, 2 Apr 2015 20:34:15 +0000 (16:34 -0400)]
[llvm] Emit division by zero/overflow checks for div/rem opcodes inside eh clauses, this is needed because llvm is not aware that these instructions can raise exceptions.

9 years ago[linker] Ensure updated Scope for exported types (e.g. unlinked PCL facade assemblies...
Sebastien Pouliot [Thu, 2 Apr 2015 19:43:33 +0000 (15:43 -0400)]
[linker] Ensure updated Scope for exported types (e.g. unlinked PCL facade assemblies in a Nuget) [#28617]

9 years ago[tools] Fix mono-cil-strip to return non-zero on failure [#28617]
Sebastien Pouliot [Thu, 2 Apr 2015 19:41:38 +0000 (15:41 -0400)]
[tools] Fix mono-cil-strip to return non-zero on failure [#28617]

9 years agoRevert "[runtime] Use mono_set_pending_exception () in a few more places."
Zoltan Varga [Thu, 2 Apr 2015 16:39:28 +0000 (12:39 -0400)]
Revert "[runtime] Use mono_set_pending_exception () in a few more places."

This reverts commit 0ae611a9eb55c5ac9dec8b97cee87f65b734692e.

Revert this as it causes crashes in the System.ServiceModel tests.

9 years ago[mcs] Check best dynamic candidate type parameters constrains only if it's single...
Marek Safar [Thu, 2 Apr 2015 15:22:29 +0000 (17:22 +0200)]
[mcs] Check best dynamic candidate type parameters constrains only if it's single candidate. Fixes #28653

9 years ago[mcs] Contextual var keywork cannot be shadowed by a namespace. Fixes #28648
Marek Safar [Thu, 2 Apr 2015 14:10:00 +0000 (16:10 +0200)]
[mcs] Contextual var keywork cannot be shadowed by a namespace. Fixes #28648

9 years ago[mcs] DefaultParameterValue treats dynamic as object. Fixes #28645
Marek Safar [Thu, 2 Apr 2015 13:56:02 +0000 (15:56 +0200)]
[mcs] DefaultParameterValue treats dynamic as object. Fixes #28645

9 years agoMerge pull request #1677 from ninjarobot/fix-test-again
João Matos [Thu, 2 Apr 2015 14:53:29 +0000 (15:53 +0100)]
Merge pull request #1677 from ninjarobot/fix-test-again

Fix XmlSerializationTest again.

9 years agoFix XmlSerializationTest again.
Dave Curylo [Thu, 2 Apr 2015 14:51:31 +0000 (10:51 -0400)]
Fix XmlSerializationTest again.

9 years agoMerge pull request #1676 from ninjarobot/fix-xml-ser-tests
João Matos [Thu, 2 Apr 2015 14:43:41 +0000 (15:43 +0100)]
Merge pull request #1676 from ninjarobot/fix-xml-ser-tests

Corrects error in XmlSerializerTests.

9 years agoCorrects error in XmlSerializerTests.
Dave Curylo [Thu, 2 Apr 2015 14:38:33 +0000 (10:38 -0400)]
Corrects error in XmlSerializerTests.

9 years ago[mcs] Handle null operator inside parenthesis expression. Fixes #28172
Marek Safar [Thu, 2 Apr 2015 13:22:45 +0000 (15:22 +0200)]
[mcs] Handle null operator inside parenthesis expression. Fixes #28172

9 years ago[mcs] Type parameter hidden methods should consider default parameters. Fixes #28651
Marek Safar [Thu, 2 Apr 2015 12:49:21 +0000 (14:49 +0200)]
[mcs] Type parameter hidden methods should consider default parameters. Fixes #28651

9 years agoMerge pull request #1672 from ninjarobot/patch-2
João Matos [Thu, 2 Apr 2015 12:05:43 +0000 (13:05 +0100)]
Merge pull request #1672 from ninjarobot/patch-2

XmlSerializer should set *non* readonly {V}Specified fields

9 years ago[corlib] CompareInfo from reference sources
Marek Safar [Thu, 2 Apr 2015 10:52:47 +0000 (12:52 +0200)]
[corlib] CompareInfo from reference sources

9 years agoXmlSerializer should set *non* readonly {V}Specified fields
Dave Curylo [Wed, 1 Apr 2015 15:23:08 +0000 (11:23 -0400)]
XmlSerializer should set *non* readonly {V}Specified fields

Addresses an oversight in PR 1257 that caused {V}Specified fields to not be set during XML deserialization in some circumstances.

Adds test for optional value serialization round trip

9 years agoMerge pull request #1674 from alexanderkyte/gdb_support
Zoltan Varga [Wed, 1 Apr 2015 23:32:40 +0000 (19:32 -0400)]
Merge pull request #1674 from alexanderkyte/gdb_support

[runtime] Disable XDEBUG on OSX

9 years ago[runtime] Use mono_set_pending_exception () in a few more places.
Zoltan Varga [Wed, 1 Apr 2015 23:30:37 +0000 (19:30 -0400)]
[runtime] Use mono_set_pending_exception () in a few more places.

9 years ago[jit] Avoid a crash if constrained_gsharedvt_call_setup () fails.
Zoltan Varga [Wed, 1 Apr 2015 20:53:58 +0000 (16:53 -0400)]
[jit] Avoid a crash if constrained_gsharedvt_call_setup () fails.

9 years ago[doc] Format comment so our tools can process this
Miguel de Icaza [Wed, 1 Apr 2015 20:18:13 +0000 (16:18 -0400)]
[doc] Format comment so our tools can process this

9 years ago[threading] Fix compilation of coop suspend on windows.
Rodrigo Kumpera [Wed, 1 Apr 2015 20:12:00 +0000 (16:12 -0400)]
[threading] Fix compilation of coop suspend on windows.

9 years ago[Runtime] Disable xdebug on OSX because it does not work and prevents gdb use.
Alexander Kyte [Wed, 1 Apr 2015 19:13:52 +0000 (15:13 -0400)]
[Runtime] Disable xdebug on OSX because it does not work and prevents gdb use.

9 years ago[corlib] FEATURE_STRONGNAME_MIGRATION should be used in all profiles to avoid breakin...
Rodrigo Kumpera [Wed, 1 Apr 2015 18:29:24 +0000 (14:29 -0400)]
[corlib] FEATURE_STRONGNAME_MIGRATION should be used in all profiles to avoid breaking compat.

9 years agoMerge pull request #1671 from kumpera/mobile_static_fixication
Rodrigo Kumpera [Wed, 1 Apr 2015 17:04:49 +0000 (13:04 -0400)]
Merge pull request #1671 from kumpera/mobile_static_fixication

Fix some of the issues with the mobile_static profile.

9 years agoMerge pull request #1673 from alexanderkyte/minor_cpp_fixes
João Matos [Wed, 1 Apr 2015 15:48:07 +0000 (16:48 +0100)]
Merge pull request #1673 from alexanderkyte/minor_cpp_fixes

[runtime] Fixed index comparison typo in class.c

9 years ago[runtime] Fixed index comparison typo in class.c
Alexander Kyte [Wed, 1 Apr 2015 15:45:11 +0000 (11:45 -0400)]
[runtime] Fixed index comparison typo in class.c

9 years ago[threadpool] Fix potential infinite loop
Ludovic Henry [Wed, 1 Apr 2015 15:38:02 +0000 (16:38 +0100)]
[threadpool] Fix potential infinite loop

9 years agobump referencesource to fix Sys.Data mobile_static build.
Atsushi Eno [Wed, 1 Apr 2015 14:05:08 +0000 (23:05 +0900)]
bump referencesource to fix Sys.Data mobile_static build.

9 years ago[mobile] Fix the build order between System.Numerics and System.Data due to dependenc...
Rodrigo Kumpera [Wed, 1 Apr 2015 03:46:34 +0000 (23:46 -0400)]
[mobile] Fix the build order between System.Numerics and System.Data due to dependencies between them.

9 years ago[corlib] Fix the mobile_static profile.
Rodrigo Kumpera [Wed, 1 Apr 2015 03:16:47 +0000 (23:16 -0400)]
[corlib] Fix the mobile_static profile.

9 years ago[corlib] Update more decimal separators. Further fixes for #17615
Marek Safar [Wed, 1 Apr 2015 12:22:16 +0000 (14:22 +0200)]
[corlib] Update more decimal separators. Further fixes for #17615

9 years ago[system.net.http] Use correct separator for headers tostring
Marek Safar [Wed, 1 Apr 2015 08:00:03 +0000 (10:00 +0200)]
[system.net.http] Use correct separator for headers tostring

9 years ago[tests] ManualResetEventSlim.SpinCount depends on the number of CPU/cores and we...
Sebastien Pouliot [Wed, 1 Apr 2015 01:30:15 +0000 (21:30 -0400)]
[tests] ManualResetEventSlim.SpinCount depends on the number of CPU/cores and we can't assume everything as multiple CPU/cores [#28611]

9 years ago[jit] Use mono_error_set_pending_exception () in jit icalls.
Zoltan Varga [Wed, 1 Apr 2015 01:26:35 +0000 (21:26 -0400)]
[jit] Use mono_error_set_pending_exception () in jit icalls.

9 years ago[runtime] Move mono_error_raise_exception () to metadata/ to fix a layering issue...
Zoltan Varga [Wed, 1 Apr 2015 01:23:36 +0000 (21:23 -0400)]
[runtime] Move mono_error_raise_exception () to metadata/ to fix a layering issue. Add mono_error_set_pending_exception () helper function.

9 years ago[jit] Increase some trampoline sizes.
Zoltan Varga [Tue, 31 Mar 2015 22:36:11 +0000 (18:36 -0400)]
[jit] Increase some trampoline sizes.

9 years ago[llvm] Reenable support for nested clauses.
Zoltan Varga [Tue, 31 Mar 2015 22:32:27 +0000 (18:32 -0400)]
[llvm] Reenable support for nested clauses.

9 years ago[runtime] Add more caches to mono_marshal_get_native_wrapper () to avoid mixing wrapp...
Zoltan Varga [Tue, 31 Mar 2015 22:32:10 +0000 (18:32 -0400)]
[runtime] Add more caches to mono_marshal_get_native_wrapper () to avoid mixing wrappers with/without exception checks.

9 years ago[llvm] Disable support for nested clauses for now as it causes regressions in the...
Zoltan Varga [Tue, 31 Mar 2015 21:01:11 +0000 (17:01 -0400)]
[llvm] Disable support for nested clauses for now as it causes regressions in the corlib tests.

9 years ago[llvm] Implement support for nested clauses.
Zoltan Varga [Tue, 31 Mar 2015 20:30:59 +0000 (16:30 -0400)]
[llvm] Implement support for nested clauses.

9 years ago[amd64] Enable thunk creation when using LLVM as well.
Zoltan Varga [Tue, 31 Mar 2015 16:50:08 +0000 (12:50 -0400)]
[amd64] Enable thunk creation when using LLVM as well.

9 years ago[threadpool] Fix typo
Ludovic Henry [Tue, 31 Mar 2015 19:34:09 +0000 (20:34 +0100)]
[threadpool] Fix typo

9 years ago[threadpool] Add IO support + Needed refactoring of threadpool
Ludovic Henry [Sat, 28 Mar 2015 19:05:38 +0000 (19:05 +0000)]
[threadpool] Add IO support + Needed refactoring of threadpool

9 years ago[threadpool] Move MonoAsyncResult invocation out of the ThreadPool
Ludovic Henry [Thu, 26 Mar 2015 17:33:26 +0000 (17:33 +0000)]
[threadpool] Move MonoAsyncResult invocation out of the ThreadPool

9 years ago[threadpool] Move threadpool-microsoft.{c,h} to threadpool-ms.{c,h}
Ludovic Henry [Thu, 26 Mar 2015 17:19:16 +0000 (17:19 +0000)]
[threadpool] Move threadpool-microsoft.{c,h} to threadpool-ms.{c,h}

Avoid having really long filenames when adding threadpool-ms-io.{c,h}

9 years ago[threadpool] Remove RegisteredWaitHandle runtime code, as it is all in managed
Ludovic Henry [Thu, 19 Mar 2015 15:57:26 +0000 (15:57 +0000)]
[threadpool] Remove RegisteredWaitHandle runtime code, as it is all in managed

9 years ago[corlib] NumberFormatInfo from reference sources
Marek Safar [Tue, 31 Mar 2015 14:04:11 +0000 (16:04 +0200)]
[corlib] NumberFormatInfo from reference sources

9 years ago[socket-io] Fix crasher in System test suite.
Rodrigo Kumpera [Tue, 31 Mar 2015 02:52:56 +0000 (22:52 -0400)]
[socket-io] Fix crasher in System test suite.

9 years ago[readme] Fix monolite instructions
Alexander Köplinger [Mon, 30 Mar 2015 23:13:29 +0000 (01:13 +0200)]
[readme] Fix monolite instructions

EXTERNAL_MCS is misleading and wrong there, the build uses monolite automatically when appropriate.

9 years agoAdd an --enable-gsharedvt configure option, same as the misnamed --enable-gsharing.
Zoltan Varga [Mon, 30 Mar 2015 20:53:28 +0000 (16:53 -0400)]
Add an --enable-gsharedvt configure option, same as the misnamed --enable-gsharing.

9 years ago[corlib] More globalization from reference sources
Marek Safar [Mon, 30 Mar 2015 16:34:03 +0000 (18:34 +0200)]
[corlib] More globalization from reference sources

9 years ago[corlib] Fix commonly used encoding names
Marek Safar [Mon, 30 Mar 2015 16:33:33 +0000 (18:33 +0200)]
[corlib] Fix commonly used encoding names

9 years ago[corlib] Update culture currency separators
Marek Safar [Mon, 30 Mar 2015 15:23:19 +0000 (17:23 +0200)]
[corlib] Update culture currency separators

9 years ago[runtime] Fixed a warning.
João Matos [Mon, 30 Mar 2015 16:21:43 +0000 (17:21 +0100)]
[runtime] Fixed a warning.

It can happen that THREAD_INFO_TYPE is already defined by a previously included header to just undefine it before re-redefining it.

9 years ago[mini] Fixed the build.
João Matos [Mon, 30 Mar 2015 16:20:57 +0000 (17:20 +0100)]
[mini] Fixed the build.

LLVM_FAILURE will try to `goto FAILURE` so we need to add a label to the function to make the compiler happy.

9 years ago[runtime] Enable the complex math support code on Android.
João Matos [Mon, 30 Mar 2015 16:20:21 +0000 (17:20 +0100)]
[runtime] Enable the complex math support code on Android.

Previously I thought these implementations were not needed but dlopen () was complaining when loading libmonosgen.so on Android so we do need them.

9 years ago[runtime] Add some complex math support code.
João Matos [Mon, 30 Mar 2015 16:17:56 +0000 (17:17 +0100)]
[runtime] Add some complex math support code.

This is adapted from FreeBSD's code.

9 years agoBump referencesource to bcee91f8a0212e687db4d1d1a906f1f97e775051.
Zoltan Varga [Mon, 30 Mar 2015 15:32:37 +0000 (11:32 -0400)]
Bump referencesource to bcee91f8a0212e687db4d1d1a906f1f97e775051.