Alexander Köplinger [Thu, 8 Jan 2015 23:34:31 +0000 (00:34 +0100)]
Merge pull request #1433 from akoeplinger/system.numerics-port
[System.Numerics] Ported code from MS referencesource
Zoltan Varga [Thu, 8 Jan 2015 22:58:48 +0000 (17:58 -0500)]
[aot] Enable emission of LLVM code into a separate file on amd64 in full aot mode. This requires emitting got accesses using normal assembly instead of emit_symbol_diff (), since clang cannot handle <sym> - . expressions if <sym> is an extern symbol.
Rodrigo Kumpera [Thu, 8 Jan 2015 22:46:03 +0000 (17:46 -0500)]
[io-layer] Header usage grooming. Remove some unused headers and add config.h guards to others.
Miguel de Icaza [Thu, 8 Jan 2015 22:09:13 +0000 (17:09 -0500)]
Merge pull request #1495 from akoeplinger/fix-cancelrequestviaproxy
[System.Net.Http] Fix CancelRequestViaProxy() test that intermittently fails on Jenkins
Rodrigo Kumpera [Thu, 8 Jan 2015 20:37:18 +0000 (15:37 -0500)]
[gc] Fix gc bitmap for array of pointers. They don't contain references
Rodrigo Kumpera [Thu, 8 Jan 2015 20:18:00 +0000 (15:18 -0500)]
[utils] Fix linux compilation.
Rodrigo Kumpera [Thu, 8 Jan 2015 20:14:56 +0000 (15:14 -0500)]
[utils] Apparently ws2ipdef.h should not be included directly. Using ws2tcpip.h which is the recommended header.
Marek Safar [Thu, 8 Jan 2015 19:54:44 +0000 (20:54 +0100)]
[mcs] Add string interpolation grammar
Rodrigo Kumpera [Thu, 8 Jan 2015 17:33:38 +0000 (12:33 -0500)]
[utils] Another round of windows fixing.
Rodrigo Kumpera [Thu, 8 Jan 2015 17:27:04 +0000 (12:27 -0500)]
[utils] More portability cleanups.
Rodrigo Kumpera [Thu, 8 Jan 2015 16:57:45 +0000 (11:57 -0500)]
[utils] Don't enable usage of sigaction unless the function is available.
Zoltan Varga [Thu, 8 Jan 2015 17:14:59 +0000 (12:14 -0500)]
[runtime] Fix a race condition in mono_remoting_marshal_init ().
Rodrigo Kumpera [Thu, 8 Jan 2015 16:34:52 +0000 (11:34 -0500)]
[utils] Don't special case android or FreeBSD when trying ucontext.h
Rodrigo Kumpera [Thu, 8 Jan 2015 16:34:03 +0000 (11:34 -0500)]
[utils] Small header sanitization. networking.h now include config.h
Rodrigo Kumpera [Thu, 8 Jan 2015 15:57:56 +0000 (10:57 -0500)]
[utils] Another try to fix the windows build.
Alexander Köplinger [Thu, 8 Jan 2015 15:50:47 +0000 (16:50 +0100)]
Only build the master branch on AppVeyor
Zoltan Varga [Thu, 8 Jan 2015 12:29:56 +0000 (07:29 -0500)]
[runtime] Another windows build fix.
Zoltan Varga [Thu, 8 Jan 2015 11:16:42 +0000 (06:16 -0500)]
[runtime] Add a header check for arpa/inet.h.
Zoltan Varga [Thu, 8 Jan 2015 10:09:11 +0000 (05:09 -0500)]
[cominterop] Fix a crash by passing the proper value to mono_marshal_free_ccw (). Fixes #24638.
Zoltan Varga [Thu, 8 Jan 2015 10:05:08 +0000 (05:05 -0500)]
[cominterop] Avoid crashes when the first item of a list is deleted and the list head was stored in a hash table. Fixes #24720.
Zoltan Varga [Thu, 8 Jan 2015 09:47:42 +0000 (04:47 -0500)]
[runtime] Avoid Process.GetCurrentProcess ().HasExited asserting. Fixes #25720.
Jo Shields [Thu, 8 Jan 2015 08:55:09 +0000 (08:55 +0000)]
[msvc] 64-bit Windows still needs _WIN32_WINNT (for monoposixhelper)
Zoltan Varga [Wed, 7 Jan 2015 23:28:38 +0000 (18:28 -0500)]
[arm] Fix OP_ICLE_UN. Fixes #25798.
Marek Safar [Wed, 7 Jan 2015 20:06:11 +0000 (21:06 +0100)]
[mcs] An argument to nameof operator cannot be extension method group
Marek Safar [Wed, 7 Jan 2015 18:20:55 +0000 (19:20 +0100)]
[mcs] update exception filters syntax to use yet another contextual keyword
Zoltan Varga [Wed, 7 Jan 2015 15:59:17 +0000 (10:59 -0500)]
[sdb] Enable the StackFrame.Domain property on stack frames which represent native transitions.
Marek Safar [Wed, 7 Jan 2015 12:57:53 +0000 (13:57 +0100)]
[mcs] Add reference to parent storey when this is hoisted in disconnected state machine. Fixes #25007
Zoltan Varga [Wed, 7 Jan 2015 08:49:01 +0000 (03:49 -0500)]
[aot] Enable separate llvm modules on amd64.
Zoltan Varga [Wed, 7 Jan 2015 08:44:58 +0000 (03:44 -0500)]
[aot] Enable emission of debug info for LLVM code if the LLVM code is emitted into a separate module.
Zoltan Varga [Wed, 7 Jan 2015 08:11:49 +0000 (03:11 -0500)]
[aot] Add support for emitting the llvm code separately into a separate object file on amd64. Not enabled yet.
Zoltan Varga [Wed, 7 Jan 2015 06:46:08 +0000 (01:46 -0500)]
[aot] Allow the emission of the LLVM code into a separate .s/.o file. Not enabled yet.
Rodrigo Kumpera [Sun, 21 Dec 2014 22:14:37 +0000 (17:14 -0500)]
[runtime] Change socket-io.c to use new API for local IP discovery.
Rodrigo Kumpera [Sun, 21 Dec 2014 22:11:43 +0000 (17:11 -0500)]
[utils] Add abstraction to retrive the local interface addresses.
Rodrigo Kumpera [Sun, 21 Dec 2014 05:34:04 +0000 (00:34 -0500)]
[runtime] IPV6 is now the norm so we can expect all systems to have it.
Zoltan Varga [Tue, 6 Jan 2015 20:14:09 +0000 (15:14 -0500)]
[sdb] Bump protocol version to 2.39 so the single stepping changes can be detected by clients.
David Karlaš [Tue, 23 Dec 2014 15:24:08 +0000 (16:24 +0100)]
[Sdb] Ignore hidden sequence points
David Karlaš [Thu, 18 Dec 2014 21:21:10 +0000 (22:21 +0100)]
[Sdb] With better mimicking of .Net debugging experience stepping out of method returns to method call instead of next statement
David Karlaš [Thu, 18 Dec 2014 11:38:36 +0000 (12:38 +0100)]
[Sdb] Fixed bug with STEP_DEPTH_MIN+STEP_SIZE_MIN which stopped on NONEMPTY_STACK sequence point in same method as it begin stepping
David Karlaš [Thu, 18 Dec 2014 18:02:52 +0000 (19:02 +0100)]
[Sdb] Removed exclusion of CEE_POP and CEE_NOP sequence point creation
David Karlaš [Thu, 18 Dec 2014 18:00:37 +0000 (19:00 +0100)]
[Sdb] Set filter on ss_req in ss_create because filter was never set condition "if ((ss_req->filter & STEP_FILTER_STATIC_CTOR) &&" in process_single_step_inner was nerver true
Zoltan Varga [Tue, 16 Dec 2014 21:46:05 +0000 (16:46 -0500)]
[sdb] Fix single stepping problems caused by missing seq point info in .mdb files. When stepping in, we have to put a single stepping breakpoint into the parent method, otherwise a missing seq point could cause the debugger to continue until it hits a method entry seq point.
Zoltan Varga [Tue, 16 Dec 2014 00:10:53 +0000 (19:10 -0500)]
[sdb] Avoid putting implicit seq points at nops followed by a sym seq point.
Zoltan Varga [Mon, 15 Dec 2014 22:57:08 +0000 (17:57 -0500)]
[sdb] Put seq points at nop's following calls as well.
Zoltan Varga [Mon, 15 Dec 2014 22:35:52 +0000 (17:35 -0500)]
[sdb] Emit an implicit sequence point after every call and newobj instruction.
Zoltan Varga [Mon, 15 Dec 2014 22:34:02 +0000 (17:34 -0500)]
[sdb] Avoid using implicit sequence points for methods without debug info in images which have debug info, like auto generated property accessors.
Rodrigo Kumpera [Tue, 6 Jan 2015 20:05:53 +0000 (15:05 -0500)]
[tests] Dump stdout/stderr on test failure.
Marek Safar [Tue, 6 Jan 2015 18:18:38 +0000 (19:18 +0100)]
[mcs] Additional fix for naming of nested types in attributes. Second fix of #24172
Rodrigo Kumpera [Tue, 6 Jan 2015 18:12:08 +0000 (13:12 -0500)]
[networking] mono_socket_address_init should set len to the size of sockaddr_* and not *_addr.
Zoltan Varga [Tue, 6 Jan 2015 17:59:30 +0000 (12:59 -0500)]
[runtime] Fix a crash in FieldInfo.GetRawConstantValue () if a dynamic field doesn't have a default value, but has the HasDefault flag set.
Zoltan Varga [Tue, 6 Jan 2015 17:21:54 +0000 (12:21 -0500)]
[jit] Add a test for #25487.
Zoltan Varga [Tue, 6 Jan 2015 09:00:09 +0000 (04:00 -0500)]
Merge pull request #1493 from BrzVlad/vtune-integration2
Vtune integration
Rodrigo Kumpera [Mon, 5 Jan 2015 23:50:43 +0000 (18:50 -0500)]
[io-layer] Remove some deadcode from the sockets code.
That function is no longer needed since nothing calls it.
This was effective dead code for ages as it would only be used by targets
with no ipv6. So, unless you're using Debian Potato, nothing to see here.
Rodrigo Kumpera [Mon, 5 Jan 2015 23:48:41 +0000 (18:48 -0500)]
[sdb] Move sdb to use the new portable networking APIS.
This simplifies a lot of the code in some cases and enables some ports
to have access to previously disabled functionality (passive inferior).
Rodrigo Kumpera [Mon, 5 Jan 2015 23:40:34 +0000 (18:40 -0500)]
[runtime] Use the new network abstraction in the sockets code.
By using a single networking abstraction for name resolution we no longer
need to have two code paths, one for struct hostent and one for struct addrinfo. Good riddance.
More specifically.
We now use functions to fetch protocol numbers and not rely on inline ifdefs.
We use the single abstraction over name resolution, which allows us to have a single code
path to convert the native structure into a managed one.
Finally, we moved the polyfill logic for missing functionality to a separate file to make
things easier.
Rodrigo Kumpera [Mon, 5 Jan 2015 23:29:02 +0000 (18:29 -0500)]
[utils] Add a cross platform networking API for name discovery.
This meant to replace the ifdef hell that is part of the current socket code and to
modernize the sockets code on some targets.
For some reason we still relied on gethostbyname (and variants) in 2015.
Those functions were deprecated circa the KAME project - yes, I'm that old to remember it.
With that in mind, we now rely on getaddrinfo for all sane targets and drop straight to
the lowest common denominator when it's not available, which is gethostbyname/gethostbyname2.
This patch removes support for the glibc gethostbyname2_r extension. Which is not a practical
problem because all linux/android target we can realistically run on have getaddrinfo.
Sorry grampa, no Slackware 8.0 anymore.
This code has a simpler structure of whole file ifdefs as much as possible, which is
a blessing to OOT ports.
Rodrigo Kumpera [Mon, 5 Jan 2015 23:21:48 +0000 (18:21 -0500)]
[configure] Add checks for some posix networking functions (getaddrinfo, gethostbyname2, gethostbyname, getprotobyname).
Some targets lack different combinations of those functions so we got to check them all.
Vlad Brezae [Mon, 5 Jan 2015 20:19:38 +0000 (12:19 -0800)]
[profiler] Report code buffers to vtune.
Vlad Brezae [Sat, 18 Oct 2014 03:46:04 +0000 (20:46 -0700)]
[profiler] Include vtune support for jitted methods in the build system.
In order to track emitted code with vtune you need to :
* pass --enable-vtune=yes to autogen.sh
* have in the LD_LIBRARY_PATH the path to the profiler libraries (ex $(installation_folder)/lib)
* pass argument --profiler=vtune to mono
Zoltan Varga [Mon, 5 Jan 2015 20:22:11 +0000 (15:22 -0500)]
[arm64] Mark the 'tailcall' opcode as a call. Fixes #25646.
Alexander Köplinger [Mon, 5 Jan 2015 18:20:04 +0000 (19:20 +0100)]
Add build badge for debian-ppc64el to README.md
Marek Safar [Mon, 5 Jan 2015 18:13:16 +0000 (19:13 +0100)]
Fixes build
Marek Safar [Mon, 5 Jan 2015 17:01:07 +0000 (18:01 +0100)]
[system.net.http] Use HttpWebRequest without additional buffering. Fixes #25213
Zoltan Varga [Mon, 5 Jan 2015 16:40:52 +0000 (11:40 -0500)]
[aot] Avoid returning different names for the same method in get_debug_sym () if llvm fails for a method. Fixes #25107.
Alexander Köplinger [Mon, 5 Jan 2015 15:38:21 +0000 (16:38 +0100)]
[System.Net.Http] Fix CancelRequestViaProxy() test that intermittently fails on Jenkins
Seems that on Jenkins, the request to the (non-existing) IP address used in the test returns before the 1s timeout,
causing the test to fail because the cancellation didn't fire.
Lowering the timeout to 1 millisecond should fix this.
I also verified that the test still correctly fails when the commit that fixed the original issue is reverted.
Zoltan Varga [Mon, 5 Jan 2015 13:06:58 +0000 (08:06 -0500)]
Merge pull request #1492 from akoeplinger/fix-eglib-remap-test
Add g_getdtablesize to list of acceptable g_* symbols in mono, for test-eglib-remap
Marek Safar [Mon, 5 Jan 2015 11:47:45 +0000 (12:47 +0100)]
[system] Fixes HttpWebRequest::AllowReadStreamBuffering
Zoltan Varga [Mon, 5 Jan 2015 04:24:51 +0000 (23:24 -0500)]
Merge pull request #1491 from akoeplinger/fix-async_read
Fix unreliable async_read.exe test
Alexander Köplinger [Sat, 29 Nov 2014 15:19:55 +0000 (16:19 +0100)]
[System.Numerics] Ported code from MS referencesource
Zoltan Varga [Sun, 4 Jan 2015 09:43:06 +0000 (04:43 -0500)]
[aot] Get rid of the code offsets code since direct method addresses are used on all supported platforms.
Zoltan Varga [Sun, 4 Jan 2015 09:19:39 +0000 (04:19 -0500)]
[aot] Avoid creating gsharedvt synchronized wrappers if gsharedvt is not enabled.
Zoltan Varga [Sun, 4 Jan 2015 09:13:45 +0000 (04:13 -0500)]
[aot] Use direct method addresses on x86/amd64.
Zoltan Varga [Sun, 4 Jan 2015 09:11:45 +0000 (04:11 -0500)]
[aot] Refactor the MONO_AOT_FILE_FLAG_DIRECT_METHOD_ADDRESSES code a bit.
Zoltan Varga [Sun, 4 Jan 2015 09:03:52 +0000 (04:03 -0500)]
[aot] Split the unbox_trampolines table into two to separate the indexes and the method addresses/offsets.
Zoltan Varga [Sun, 4 Jan 2015 08:07:47 +0000 (03:07 -0500)]
[aot] Use nops as alignment padding on amd64 instead of zeros.
Alexander Köplinger [Sun, 4 Jan 2015 07:59:35 +0000 (08:59 +0100)]
Add g_getdtablesize to list of acceptable g_* symbols in mono, for test-eglib-remap
The method was added in
cd9f3b5859bce24cc00f3620544bde581054a8dd and caused the test to fail.
Alexander Köplinger [Sun, 4 Jan 2015 04:51:18 +0000 (05:51 +0100)]
Fix unreliable async_read.exe test
Zoltan Varga [Sat, 3 Jan 2015 18:36:02 +0000 (13:36 -0500)]
[runtime] Use the proper domain in mono_thread_destroy_domain_tls (). Fixes #25629.
Zoltan Varga [Sat, 3 Jan 2015 18:32:43 +0000 (13:32 -0500)]
[jit] Disable the seq point tests for now, they seem to fail because of stdout buffering problems on osx.
Zoltan Varga [Sat, 3 Jan 2015 15:03:34 +0000 (10:03 -0500)]
[runtime] Fix the LOCK_TRACER build.
Miguel de Icaza [Sat, 3 Jan 2015 14:42:22 +0000 (12:42 -0200)]
[Windows.Forms] DataGridViewTextBoxCell: do not use a shared editing control
This fixes the case of the System.ObjectDisposedException being thrown
when editing a text cell in a DataGridView control a second time.
The problem is that the static control would be disposed by the code in
DataGridView's EditingControlInternal, but this instance was reused over
and over.
Instead, we now createa new editing control every time that the TextBoxCell
is created.
The investigation for this bug took place here:
https://bugzilla.xamarin.com/show_bug.cgi?id=9653
Fixes also:
https://bugzilla.xamarin.com/show_bug.cgi?id=22297
Zoltan Varga [Sat, 3 Jan 2015 12:13:09 +0000 (07:13 -0500)]
[jit] Fix some IL_SEQ_POINT filtering issues on x86.
Zoltan Varga [Sat, 3 Jan 2015 11:48:45 +0000 (06:48 -0500)]
[runtime] Implement FieldInfo.GetRawConstantValue () for dynamic types. Fixes #25690.
Zoltan Varga [Sat, 3 Jan 2015 11:01:22 +0000 (06:01 -0500)]
[sdb] Fix the previous change by setting SingleStepReq.start_method when the request is created, not when single stepping is started, since the latter can happen multiple times for a single step request.
Zoltan Varga [Sat, 3 Jan 2015 10:38:19 +0000 (05:38 -0500)]
[sdb] Avoid stepping out of the current method if it is a cctor if StepFilter.StaticCtor is used. Fixes #14277.
Zoltan Varga [Sat, 3 Jan 2015 09:40:22 +0000 (04:40 -0500)]
Merge pull request #1473 from esdrubal/sq
[runtime] Optimizations fixes for OP_IL_SEQ_POINT compatibility.
Zoltan Varga [Sat, 3 Jan 2015 03:29:04 +0000 (22:29 -0500)]
[jit] Fix the returning of vtypes of size less than 8 in registers by using the proper sized load instructions instead of always 8. Fixes #25631.
Zoltan Varga [Sat, 3 Jan 2015 02:08:59 +0000 (21:08 -0500)]
[pdb2mdb] Implement support for scopes. Fixes #25357.
Zoltan Varga [Fri, 2 Jan 2015 23:36:02 +0000 (18:36 -0500)]
[bcl] Fix crashes when FieldInfo.GetValue () is called on a pointer field with a null value. Fixes #25664.
Zoltan Varga [Fri, 2 Jan 2015 22:58:33 +0000 (17:58 -0500)]
[runtime] Avoid reading past the end of a MonoGenericParam structure in some cases. Fixes #25679.
Marek Safar [Fri, 2 Jan 2015 22:16:33 +0000 (23:16 +0100)]
[mcs] More special case handling for explicit type names documentation. Fixes #25544
Marek Safar [Fri, 2 Jan 2015 17:49:15 +0000 (18:49 +0100)]
[corlib] Fix Type::GetEnumName/IsEnumDefined to return same value as Enum::GetName/IsDefined
João Matos [Fri, 2 Jan 2015 16:29:37 +0000 (16:29 +0000)]
Fixed metadata offsets for ARM64 support.
Alexander Köplinger [Fri, 2 Jan 2015 15:54:22 +0000 (16:54 +0100)]
Fix CookieContainerTest to use expiration date in the future
It is 2015 now, so the cookie is already expired and the test fails otherwise.
Marek Safar [Fri, 2 Jan 2015 14:19:18 +0000 (15:19 +0100)]
[corlib] Allow bool/char to enum conversions
Alexander Köplinger [Wed, 31 Dec 2014 11:42:05 +0000 (12:42 +0100)]
Add missing quote to string added in
156ab8c5fc89c6fa9bda6ba2d1e240ca80c39bbe
This would fail to compile otherwise when the PCL constant is defined.
Alexander Köplinger [Wed, 31 Dec 2014 11:38:41 +0000 (12:38 +0100)]
Merge pull request #1081 from rneatherway/bug17537
Allow CLR binaries to be passed to Process.Start
Marek Safar [Tue, 30 Dec 2014 21:24:48 +0000 (22:24 +0100)]
Merge pull request #1482 from akoeplinger/fix-codetaskfactory-2
[Microsoft.Build.Tasks] Rework CodeTaskFactory to use CodeDom and implement parameter support
Alexander Köplinger [Sun, 28 Dec 2014 02:04:37 +0000 (03:04 +0100)]
[Microsoft.Build.Tasks] Rework CodeTaskFactory to use CodeDom and implement parameter support
Removed the old string-based code and use CodeDom APIs for everything.
Implemented parameter support by adding the necessary properties to the generated class.
Fixed bug where the task references weren't passed to the compiler.
This should now work with VB code as well (assuming the compiler is installed).
João Matos [Wed, 24 Dec 2014 19:48:46 +0000 (19:48 +0000)]
[runtime] Added support for builds with cross-compiled LLVM.
João Matos [Wed, 24 Dec 2014 19:48:01 +0000 (19:48 +0000)]
[runtime] Fixed mini-llvm.c build with MinGW.
MinGW-w64 lacks a definition for bzero which we use in the rest of this file, provide a simple implementation that should get the job done.