Eugene Zemtsov [Wed, 4 Mar 2015 02:20:36 +0000 (18:20 -0800)]
Fix build from msbuild environment
Eugene Zemtsov [Tue, 17 Feb 2015 05:58:15 +0000 (21:58 -0800)]
Pipe based communication between debugee and managed debugger on Linux
Goal of this change is to make managed debugging on Linux possible. (It is not fully achieved, but we're getting there)
So far our provision for debugging on Linux is somewhat different from debugging on Windows.
Instead of using WaitForDebugEvent and RaiseException as means of communication between debugger and debuggee, we're gonna use pipes.
Thankfully from old times of Silverlight Mac debugging we had debugging via network sockets under ifdefs FEATURE_DBGIPC_TRANSPORT_DI and FEATURE_DBGIPC_TRANSPORT_VM.
So this change is taking that old way of debugging, changing sockets for network pipes, removes lots of unused stuff and implements whatever is missing on Linux.
Testing:
Due to infrastructural issues I wasn't able to test debugging on Linux yet. So my testing consistent of
1. End to end net pipe debugging on Windows
2. Testing of twowaypipe implementation on Linux
3. Testing of search for loaded CoreCLR module on Linux.
Lubomir Litchev [Tue, 3 Mar 2015 22:04:01 +0000 (14:04 -0800)]
Merge pull request #335 from LLITCHEV/master
Fix a problem with accessing caller passed arguments on SystemV systems.
Jan Kotas [Tue, 3 Mar 2015 21:49:06 +0000 (13:49 -0800)]
Merge pull request #381 from jkotas/unwinding
More asm code unwinding fixes
Matt Mitchell [Tue, 3 Mar 2015 19:14:59 +0000 (11:14 -0800)]
Merge pull request #373 from benpye/travis-ci-fix
Incorrect branch for travis-ci badge
Jan Kotas [Tue, 3 Mar 2015 18:06:07 +0000 (10:06 -0800)]
Merge pull request #384 from richlander/master
Make it easier for people to find ECMA info
Richard Lander [Tue, 3 Mar 2015 14:25:27 +0000 (06:25 -0800)]
Make it easier for people to find ECMA info
Matt Ellis [Tue, 3 Mar 2015 08:46:52 +0000 (00:46 -0800)]
Merge pull request #382 from jkotas/authenticate
Delete host authentication enforcement
Pat Gavlin [Tue, 3 Mar 2015 07:13:25 +0000 (23:13 -0800)]
Merge pull request #378 from pgavlin/LLDBCMake
Do not require that the LLDB plugin builds unless targeting Linux.
Matt Ellis [Tue, 3 Mar 2015 06:03:09 +0000 (22:03 -0800)]
Merge pull request #383 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Tue, 3 Mar 2015 05:02:12 +0000 (21:02 -0800)]
Delete host authentication enforcement
Jan Kotas [Tue, 3 Mar 2015 04:29:45 +0000 (20:29 -0800)]
Merge pull request #379 from stephentoub/remove_sqos_flag
Remove SECURITY_SQOS_PRESENT from dwFlagsAndAttributes on Unix
Jan Kotas [Tue, 3 Mar 2015 03:56:45 +0000 (19:56 -0800)]
Correct set_cfa_register arguments
Jan Kotas [Tue, 3 Mar 2015 03:54:14 +0000 (19:54 -0800)]
Delete initial .cfi_def_cfa_offset
.cfi_def_cfa_offset at the start of the method is unnecessary (the C++ generated code does not have it either), and it confuses gdb (gdb is not able to print stacktrace when stopped at the start of the method)
Pat Gavlin [Tue, 3 Mar 2015 02:47:28 +0000 (18:47 -0800)]
Add an option to exlude the SOS plugin for LLDB from the build.
This option defaults to true on Windows.
Stephen Toub [Tue, 3 Mar 2015 02:06:36 +0000 (21:06 -0500)]
Remove SECURITY_SQOS_PRESENT from dwFlagsAndAttributes
The FileStream in mscorlib is always passing SECURITY_SQOS_PRESENT | SECURITY_ANONYMOUS to CreateFileW, but the Unix PAL's implementation doesn't understand these flags and fails as a result. Since there's no good mapping for these on Unix that I know, rather than try to emulate them in PAL, I'm simply omitting them when on Unix.
Pat Gavlin [Tue, 3 Mar 2015 01:50:44 +0000 (17:50 -0800)]
Do not require that the LLDB plugin builds unless targeting Linux.
Just what it says on the tin. Unblock the out-of-box build on OS X.
Lubomir Litchev [Tue, 3 Mar 2015 00:28:32 +0000 (16:28 -0800)]
More typo fixes.
Pat Gavlin [Tue, 3 Mar 2015 00:16:56 +0000 (16:16 -0800)]
Merge pull request #364 from pgavlin/LLDBCMake
Improve LLDB probing and fix a small bug in umthunkstub.S.
Sergiy Kuryata [Tue, 3 Mar 2015 00:14:44 +0000 (16:14 -0800)]
Merge pull request #376 from jkotas/mdarray
va_list portability fix in JIT_NewMDArr helper
Lubomir Litchev [Tue, 3 Mar 2015 00:14:08 +0000 (16:14 -0800)]
Fixed typos.
Lubomir Litchev [Mon, 2 Mar 2015 23:46:51 +0000 (15:46 -0800)]
Merge remote-tracking branch 'upstream/master'
Mergeddup changes.
Conflicts:
src/jit/codegencommon.cpp
Jan Kotas [Mon, 2 Mar 2015 23:40:14 +0000 (15:40 -0800)]
va_list portability fix in JIT_NewMDArr helper
Pat Gavlin [Mon, 2 Mar 2015 23:27:12 +0000 (15:27 -0800)]
Fixes.
- Enable @rpath support on OS X and silence the policy warning.
- Replace usage of uname -o, which is Linux-specific, with uname -s,
which is not.
- Document the WITH_LLDB_{LIBS,INCLUDES} variables.
- Stringify a couple of arguments to find_{library,paths} and
include_directories.
- Unstringify an argument to cmake in gen-buildsys-clang.sh.
Sedar Gokbulut [Mon, 2 Mar 2015 23:13:18 +0000 (15:13 -0800)]
[UAP Debug-F5] This change is about isolating CoreRuntime from .NetNative. Currently the VSIntegartion pieces of CoreRuntime is mingled with that of .Net Native toolchain. CoreRuntime targets files are packaged inside netfx_NativeCompilationBuild.msi. This creates an unnecessary dependency to .Net Native. It'd lead us to service this .net native MSI in order to to update CoreRuntime.
There's one component that needs to exist in both sides, the component that's doing the transformations for CoreRuntime. AppCompile, which lives besides .net native binaries, needs to perform these transformations (for fallback toolchain which would target CoreRuntime). Likewise UAP Debug-F5 scenario would naturally need these transformations. Unfortunatelly we're shipping the CoreRuntime and PN from two different branches. So there isn't really a great way to support both product lines without duplicating the code.
The changes are:
- I'm duplicating the code that handles the appx transformation in AppCompile into a standalone assembly.
I'm also taking out dead code which is supposed to call crossgen in case of fallback toolchain. It's not yet clear how we're going to handle both VS scenario and Store compilation if/when fallback toolchain is going to ship. I may need to introduce this code block back if fallback toolchain is going to be supported.
- I've also created a new Logger that's leveraging the Microsoft.Build.Framework.BuildEngine.
- Moving the targets files for CoreRuntime VS integration under Project K. These files have slight edits, such as renaming the properties (from AppCompile to something that makes more sense sine there aren't any AppCompile anymore)
- Finally, including the new files in the CoreRuntimeSDK setup.
Note, once this changeset is checked in, I'll check-in a cleanup changeset on ProjectN branch where I'll remove CoreRuntime related pieces.
[tfs-changeset: 1424011]
Lubomir Litchev [Mon, 2 Mar 2015 22:52:46 +0000 (14:52 -0800)]
Fix stack homing of register parameter offsets bugs.
This set of changes contain:
1. Fix of a RA conservative assertion. In case where there are no
callee-save registers the RA was asserting this fact. It is a valid state
on System V machines for XMM registers. The RA does spill and frees a
register if the assertion doesn't trigger. The fix is to make the assert
allow non-callee-saved registers.
2. It fixes a problem with hardcoding registers when exception funclets
are generated. It uses platform independent RBM_ARG_0 macros now.
3. It disables struct promotion for UNIX. This functionality will be
brought up later.
4. It addresses feedback from a previous PR.
Jan Kotas [Mon, 2 Mar 2015 19:10:16 +0000 (11:10 -0800)]
Merge pull request #365 from jkotas/gcfixes
GC stackwalking fixes
Jan Kotas [Mon, 2 Mar 2015 19:10:02 +0000 (11:10 -0800)]
Merge pull request #367 from jkotas/RBP-chains
Update assembly helpers to use regular RBP frames
Jan Kotas [Mon, 2 Mar 2015 17:48:58 +0000 (09:48 -0800)]
Merge pull request #372 from kangaroo/osx-release-fix
Apples assembler requires .cfi_startproc after the symbols
Jan Kotas [Mon, 2 Mar 2015 17:48:31 +0000 (09:48 -0800)]
Merge pull request #363 from sergiy-k/managedeh
Implement basic support for managed exception handling
Ben Pye [Mon, 2 Mar 2015 17:34:13 +0000 (17:34 +0000)]
Incorrect branch for travis-ci badge
Matt Mitchell [Mon, 2 Mar 2015 17:29:51 +0000 (09:29 -0800)]
Merge pull request #369 from benpye/travis-ci
Travis-CI for OS X builds
Krzysztof Cwalina [Mon, 2 Mar 2015 17:05:35 +0000 (09:05 -0800)]
Changed the build to build CoreConsole.exe
[tfs-changeset: 1423779]
Jan Kotas [Sat, 28 Feb 2015 17:23:04 +0000 (09:23 -0800)]
Update assembly helpers to use regular RBP frames
Sergiy Kuryata [Mon, 2 Mar 2015 02:46:58 +0000 (18:46 -0800)]
Merge pull request #1 from kangaroo/managedeh
Exception handling needs a full context here to restore properly
Rich Lander [Sun, 1 Mar 2015 16:50:19 +0000 (08:50 -0800)]
Merge pull request #370 from makcakaya/master
Updated intro-to-clr document.
Geoff Norton [Sun, 1 Mar 2015 05:44:40 +0000 (21:44 -0800)]
Exception handling needs a full context here to restore properly
Sergiy Kuryata [Sun, 1 Mar 2015 01:47:30 +0000 (17:47 -0800)]
Change the RtlRestoreContext function to use MachSetThreadContext on OSX.
Mert [Sun, 1 Mar 2015 01:33:33 +0000 (03:33 +0200)]
Removed added detail about generics.
Mert [Sun, 1 Mar 2015 01:25:52 +0000 (03:25 +0200)]
Changed to heading to Verifiable Code - ...
Mert [Sat, 28 Feb 2015 22:25:57 +0000 (00:25 +0200)]
updated summary
Mert [Sat, 28 Feb 2015 22:23:28 +0000 (00:23 +0200)]
corrected TPL link
Mert [Sat, 28 Feb 2015 22:11:05 +0000 (00:11 +0200)]
added detail to generics part
Mert [Sat, 28 Feb 2015 21:59:21 +0000 (23:59 +0200)]
Corrected another heading
Mert [Sat, 28 Feb 2015 21:47:31 +0000 (23:47 +0200)]
Changed heading to be more meaningful
Ben Pye [Sat, 28 Feb 2015 19:42:46 +0000 (19:42 +0000)]
Add OS X status to the readme.
Geoff Norton [Sat, 28 Feb 2015 19:17:15 +0000 (11:17 -0800)]
Apples assembler requires .cfi_startproc after the symbols
Release builds were currently not working on OSX due to the order
of .cfi_startproc and the symbol. Move .cfi_* after the symbol
Ben Pye [Sat, 28 Feb 2015 17:59:48 +0000 (17:59 +0000)]
Add travis-ci support for OS X builds
Jan Kotas [Sat, 28 Feb 2015 17:02:26 +0000 (09:02 -0800)]
Filter out faked save locations returned by libunwind
Jan Kotas [Sat, 28 Feb 2015 17:00:58 +0000 (09:00 -0800)]
Fix definitions of preserved regs in GCInfo to match Unix calling convention
Pat Gavlin [Sat, 28 Feb 2015 02:32:38 +0000 (18:32 -0800)]
Don't attempt to walk up the directory tree after finding LLDB.h.
The value returned from find_path is already correct.
Pat Gavlin [Fri, 27 Feb 2015 21:30:03 +0000 (13:30 -0800)]
Improve LLDB probing and fix a small bug in umthunkstub.S.
- Replace the LLDB_{INCLUDE,LIB}_DIR environment variables with
WITH_LLDB_{INCLUDES,LIBS} variables in lldbplugin/CMakeLists.txt. These
variables are instead picked up in gen-buildsys-clang.sh.
- Look for a typical lldb installation as well as the Ubuntu-specific
lldb-3.5 installationin the usual location as well as the Ubuntu-specific
location for lldb-3.5.
- Unify the probing logic for Linux and OS X.
- In addition to ensuring the presence of LLDB.h, ensure that liblldb is
present.
- Fix an ambiguously-sized comparison in umthunkstub.S.
Matt Ellis [Fri, 27 Feb 2015 21:03:55 +0000 (13:03 -0800)]
Merge pull request #362 from ellismg/use-https-for-nuget
Use HTTPS for fetching NuGet.exe
Sergiy Kuryata [Fri, 27 Feb 2015 19:58:02 +0000 (11:58 -0800)]
Merge remote-tracking branch 'upstream/master' into managedeh
Sergiy Kuryata [Fri, 27 Feb 2015 19:50:16 +0000 (11:50 -0800)]
Implement basic support for managed exception handling.
Implementation of the managed exception handling in this change is by far not yet complete but it is a good starting point that we can build on top of it. Basically this code allows managed exceptions to be thrown and caught. The finally blocks and nested try/catch works too. But re-throwing an exception from a catch block and many other corner cases do not work yet.
In addition, RtlRestoreContext needs to be properly implemented. This change introduces a very simply implementation that works only in those cases where XMM registers are not used in the code that handles the exception so they don’t need to be restored. I have created a separate issue to track it (https://github.com/dotnet/coreclr/issues/360).
This change also fixes an issue in JIT where JIT was incorrectly passing arguments in the RCX and RDX registers to the finally and catch funclets.
Matt Ellis [Fri, 27 Feb 2015 19:47:54 +0000 (11:47 -0800)]
Use HTTPS for fetching NuGet.exe
Jan Kotas [Fri, 27 Feb 2015 07:09:37 +0000 (23:09 -0800)]
Merge pull request #358 from jkotas/botr
Minor edits in the MethodDesc doc
Jan Kotas [Fri, 27 Feb 2015 06:17:54 +0000 (22:17 -0800)]
Minor edits in the MethodDesc doc
Rich Lander [Fri, 27 Feb 2015 06:39:27 +0000 (22:39 -0800)]
Merge pull request #356 from jkotas/glossary
Add LCG and VSD to the glossary
Jan Kotas [Fri, 27 Feb 2015 06:11:43 +0000 (22:11 -0800)]
Merge pull request #357 from richlander/rich-docs
Add more botr docs
Richard Lander [Fri, 27 Feb 2015 05:36:26 +0000 (21:36 -0800)]
Update documentation index
Jan Kotas [Fri, 27 Feb 2015 05:34:06 +0000 (21:34 -0800)]
Add Method Descriptor Doc
dotnet-bot [Fri, 27 Feb 2015 05:33:21 +0000 (21:33 -0800)]
Add Virtual Stub Dispatch doc
Jan Kotas [Fri, 27 Feb 2015 04:27:27 +0000 (20:27 -0800)]
Add LCG and VSD to the glossary
Jan Kotas [Thu, 26 Feb 2015 19:05:37 +0000 (11:05 -0800)]
Merge pull request #346 from kangaroo/issue-345
Implement ExternalMethodFixupStub, VirtualMethodFixupStub and StubDispatchFixupStub for UNIX
Jan Kotas [Thu, 26 Feb 2015 19:04:38 +0000 (11:04 -0800)]
Merge pull request #351 from jkotas/gcsample
Add more comments to GCSample
Jan Kotas [Thu, 26 Feb 2015 18:29:52 +0000 (10:29 -0800)]
Merge pull request #348 from kangaroo/issue-222
[OSX] Resolve all compiler warnings in the PAL
Jan Kotas [Thu, 26 Feb 2015 18:28:54 +0000 (10:28 -0800)]
Merge pull request #347 from kangaroo/master
Fixup precode alignment issues were sorted on OSX a while back
Jan Kotas [Thu, 26 Feb 2015 18:27:06 +0000 (10:27 -0800)]
Add more comments to GCSample
Mike McLaughlin [Thu, 26 Feb 2015 17:41:41 +0000 (09:41 -0800)]
Merge pull request #338 from mikem8361/sospluginbuild1
Add check for lldb-3.5-dev package and enable lldb sos plugin build
Geoff Norton [Thu, 26 Feb 2015 08:52:42 +0000 (17:52 +0900)]
[OSX] Resolve all compiler warnings in the PAL
Remove the OSX specific implementations of GetVersion*, they relied on
deprecated functionality, and aren't really needed anywas. Unified the
behaviour with the rest of the PAL variants.
Removed the DEBUG channel from machmessage.cpp. It was unused.
Geoff Norton [Thu, 26 Feb 2015 08:41:25 +0000 (17:41 +0900)]
Fixup precode alignment issues were sorted on OSX a while back
Geoff Norton [Thu, 26 Feb 2015 08:12:49 +0000 (17:12 +0900)]
Implement ExternalMethodFixupStub, VirtualMethodFixupStub and StubDispatchFixupStub for UNIX
Jan Kotas [Thu, 26 Feb 2015 04:23:19 +0000 (20:23 -0800)]
Merge pull request #343 from jkotas/dead-stub
Delete dead code
Jan Kotas [Thu, 26 Feb 2015 03:59:28 +0000 (19:59 -0800)]
Delete dead code
Jan Kotas [Thu, 26 Feb 2015 03:41:28 +0000 (19:41 -0800)]
Merge pull request #337 from kangaroo/issue-324
Implement TheUMEntryPrestub and UMThunkStub for UNIX ABI
Geoff Norton [Tue, 24 Feb 2015 03:32:21 +0000 (12:32 +0900)]
Implement TheUMEntryPrestub and UMThunkStub for UNIX ABI
Rework all three stubs from windows calling convention to AMD64 calling convention.
Adjust all stacks to accomodate 2 additional argument registers, and 4 additional
xmm registers. Remove unneeded FEATURE_INCLUDE_ALL_INTERFACES code.
Jan Kotas [Thu, 26 Feb 2015 01:04:55 +0000 (17:04 -0800)]
Merge pull request #342 from dotnet-bot/from-tfs
Merge changes from TFS
Matt Ellis [Thu, 26 Feb 2015 00:25:54 +0000 (16:25 -0800)]
Merge pull request #341 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Thu, 26 Feb 2015 00:07:43 +0000 (16:07 -0800)]
Allow users to specify a no GC region (on behalf of maonis)
This mode lets users to specify an allocation amount for which no GCs would happen. Sometimes during the absolutely performance critical paths users have the desire to allocate without interference from the GC. If there is enough memory, GC will not kick in while this mode is set.
[tfs-changeset: 1421386]
Jan Kotas [Wed, 25 Feb 2015 23:44:01 +0000 (15:44 -0800)]
Merge pull request #340 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Wed, 25 Feb 2015 23:42:51 +0000 (15:42 -0800)]
Merge pull request #339 from lucasmeijer/fix-gc-sample
Fix gc sample
Jan Kotas [Wed, 25 Feb 2015 23:42:00 +0000 (15:42 -0800)]
Fix build break in Unix mscorlib
[tfs-changeset: 1421360]
dotnet-bot [Wed, 25 Feb 2015 22:46:31 +0000 (14:46 -0800)]
FI from $/DevDiv/FXMain to $/DevDiv/FX/Product/ProjectK **FI_LABEL=22625.00**
[tfs-changeset: 1421297]
Lucas Meijer [Wed, 25 Feb 2015 22:11:16 +0000 (14:11 -0800)]
fix indenting
Lucas Meijer [Wed, 25 Feb 2015 21:57:14 +0000 (13:57 -0800)]
use two CGCDescSeries, and fix incorrect size
Rich Lander [Wed, 25 Feb 2015 20:03:29 +0000 (12:03 -0800)]
Merge pull request #323 from david-mitchell/master
Fix miscellaneous grammar issues and perform light editing.
David Mitchell [Sun, 22 Feb 2015 22:02:16 +0000 (14:02 -0800)]
Fix grammar issues and perform light editing.
Matt Ellis [Wed, 25 Feb 2015 02:09:53 +0000 (18:09 -0800)]
Merge pull request #336 from dotnet-bot/from-tfs
Merge changes from TFS
dotnet-bot [Wed, 25 Feb 2015 00:47:43 +0000 (16:47 -0800)]
Add missing .gitmirrorall file to lldbplugin
[tfs-changeset: 1420614]
Mike McLaughlin [Tue, 24 Feb 2015 23:50:28 +0000 (15:50 -0800)]
Clean up lldb-3.5-dev package error message not to be so noisy. Uses a cached variable to only do the check and print the result once.
Lubomir Litchev [Tue, 24 Feb 2015 20:56:34 +0000 (12:56 -0800)]
Fix a problem with accessing caller passed arguments on SystemV systems.
The code was assuming that the register passed arguments will be always
spilled out to the outgoing arg area in the caller. Thus, if the RA
decided to home a register passed arg on the callee stack, accessing the
stack passed args will have a delta in the offset for the spilled arg.
This is incorrect. On SystemV systems the spilled register passed args are
homed on the callee stack. In case of frame register the extra delta for
the spilled arg is not needed. It is still needed for a non frame register
frame.
Matt Mitchell [Tue, 24 Feb 2015 20:53:47 +0000 (12:53 -0800)]
Merge pull request #334 from mmitche/random-fixes
Random fixes
Mike McLaughlin [Tue, 24 Feb 2015 20:32:02 +0000 (12:32 -0800)]
Merge remote-tracking branch 'upstream/master' into sospluginbuild1
Mike McLaughlin [Tue, 24 Feb 2015 20:21:59 +0000 (12:21 -0800)]
Add lldb dev package checking and enable the lldb plugin build.
Matt Mitchell [Tue, 24 Feb 2015 19:15:18 +0000 (11:15 -0800)]
Make the delta for this test += the targeted value
Stephen Toub [Tue, 24 Feb 2015 19:21:01 +0000 (14:21 -0500)]
Merge pull request #332 from stephentoub/remove_dll_exts
Remove .so extension from libcoreclr in mscorlib P/Invokes
Sergiy Kuryata [Tue, 24 Feb 2015 19:17:43 +0000 (11:17 -0800)]
Merge pull request #304 from mikem8361/soscommand1
These changes are the beginning of the SOS for coreclr under lldb.
Matt Mitchell [Tue, 24 Feb 2015 18:49:49 +0000 (10:49 -0800)]
Two random fixes
* Use uname -s on mac
* Don't print "Running ..." for pal tests (will still print failures). Cuts down on noise in output.
Mike McLaughlin [Tue, 24 Feb 2015 17:42:06 +0000 (09:42 -0800)]
Merge remote-tracking branch 'upstream/master' into soscommand1