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
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
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
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.
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
Stephen Toub [Tue, 24 Feb 2015 17:17:47 +0000 (12:17 -0500)]
Remove .so extension from libcoreclr in mscorlib P/Invokes
Let the runtime apply the right extension based on the target platform.
Matt Mitchell [Tue, 24 Feb 2015 17:01:13 +0000 (09:01 -0800)]
Merge pull request #325 from kyulee1/switchtest
add a switch test
Stephen Toub [Tue, 24 Feb 2015 16:45:48 +0000 (11:45 -0500)]
Merge pull request #331 from stephentoub/redirect_ole32
Redirect mscorlib's ole32.dll P/Invokes to libcoreclr
Stephen Toub [Tue, 24 Feb 2015 15:23:01 +0000 (10:23 -0500)]
Redirect ole32.dll P/Invokes to libcoreclr
When FEATURE_PAL is defined, mscorlib P/Invokes to kernel32 and user32 are being redirected to libcoreclr.so (at least for now as a bring-up mechanism). However, P/Invokes to ole32.dll aren't being redirected (CoCreateGuid, CoTaskMemAlloc, etc.) even though all of the ones that are used exist in the PAL. This causes failures any time Guid.NewGuid is called, any time the StubHelpers string marshalers are used, etc.
This commit just adds ole32.dll to the set of libraries for which mscorlib redirects its P/Invokes to libcoreclr.
Kyungwoo Lee [Mon, 23 Feb 2015 20:41:16 +0000 (12:41 -0800)]
Add a switch test to cover Jit codegen.
This is a test case to cover switch expansion in Reader.
Mike McLaughlin [Tue, 24 Feb 2015 03:58:21 +0000 (19:58 -0800)]
Merge remote-tracking branch 'upstream/master' into soscommand1
Mike McLaughlin [Tue, 24 Feb 2015 03:56:59 +0000 (19:56 -0800)]
Add check for lldb-3.5-dev package and enable lldb sos plugin build.
Matt Mitchell [Tue, 24 Feb 2015 01:19:57 +0000 (17:19 -0800)]
Merge pull request #287 from mmitche/output-paths
Place binaries and intermediates in folders that include OS
Matt Mitchell [Tue, 24 Feb 2015 00:34:11 +0000 (16:34 -0800)]
Place binaries and intermediates in folders that include OS
Rework the output paths so that the OS may appear in them. This then follows the same form as corefx. This solves a number of problems:
1) When building unix mscorlib after the regular build, we would use the wrong intermediates for incremental.
2) When testing windows after building unix mscorlib we'd use the wrong outputs and fail.
This change removes our cmake directory and moves cmake generated files into intermediates (under OS/arch paths)
The reason is that the intermediates go under here when actually doing the build, and on unix based systems, we need to generate the cmake files for different builds into different directories for the purpose of preserving incremental builds.
Change clean behavior
Clean should simply delete the root binary. We also should not make assumptions about
whether necessary directories are available when we begin to build and should create them every time if
necessary.
Create directories as needed.
Mike McLaughlin [Mon, 23 Feb 2015 23:40:48 +0000 (15:40 -0800)]
Don't build the lldb plugin until we can install the lldb-3.5-dev package on the CI machines.
Rich Lander [Mon, 23 Feb 2015 23:20:50 +0000 (15:20 -0800)]
Merge pull request #320 from richlander/rich-build
Clarify Visual Studio pre-req
Stephen Toub [Mon, 23 Feb 2015 22:15:55 +0000 (17:15 -0500)]
Merge pull request #326 from stephentoub/mres_datetime
Change MRES to use DateTime.UtcNow instead of Now
Stephen Toub [Mon, 23 Feb 2015 20:44:23 +0000 (15:44 -0500)]
Change MRES to use DateTime.UtcNow instead of Now
In debug builds, ManualResetEventSlim is storing the last time that Set and Reset are called, using DateTime.Now. This in turn requires time zone information, which is currently not implemented on Unix, causing any usage of ManualResetEventSlim.Set/Reset in a debug build to throw a NotImplementedException.
This change just switches the usage to be DateTime.UtcNow instead of DateTime.Now to avoid the need for time zone information. I was tempted to remove these debug-only fields entirely, but in case someone's actually using them during debugging, doesn't seem particularly harmful to leave them.
Mike McLaughlin [Mon, 23 Feb 2015 18:09:14 +0000 (10:09 -0800)]
Merge remote-tracking branch 'upstream/master' into soscommand1
Bengu Li [Mon, 23 Feb 2015 17:32:50 +0000 (09:32 -0800)]
Merge pull request #322 from libengu/AltJitNameChange
Change alternative JIT name to LLILC
Bengu Li [Sun, 22 Feb 2015 21:28:45 +0000 (13:28 -0800)]
Allow alternative JIT configurable.
Bengu Li [Sun, 22 Feb 2015 17:45:50 +0000 (09:45 -0800)]
Change alternative JIT name to LLILC
Richard Lander [Sun, 22 Feb 2015 02:05:26 +0000 (18:05 -0800)]
Clarify Visual Studio pre-req
Jan Kotas [Sun, 22 Feb 2015 00:51:12 +0000 (16:51 -0800)]
Merge pull request #317 from janvorli/fix-cfi-annotation
Fix cfi annotation for NDirectImportThunk and JIT_RareDisableHelper
Pat Gavlin [Sun, 22 Feb 2015 00:26:43 +0000 (16:26 -0800)]
Merge pull request #319 from pgavlin/FixClangWarnings
Fix warnings generated when building with Clang on Linux.
Pat Gavlin [Sat, 21 Feb 2015 18:23:28 +0000 (10:23 -0800)]
Fix warnings generated when building with Clang on Linux.
There were three classes of warnings that needed to be fixed:
1) Warnings for unused typedefs
2) Warnings for pointer to boolena conversions that were always true
3) Warnings for taking the absolute value of unsigned values
(1) accounted for the majority of the warnings. All of these warnings
originated from macro definitions debugreturn.h, staticcontract.h,
or pal_assert.h. In the first two cases, typedefs were used as
compile-time checks to ensure certain invariants inside of method or
function bodies. These cases were addressed by using an empty member
of the typedef under an "if (0)" guard. In the third case, typedefs
were used for compile-time assertions that may appear in any location
in a source file; these have been updated to use C++11's static_assert.
(2) and (3) were much more straightforward: the former was addressed by
explicitly comparing the source pointer against NULL and the latter by
removing the offending calls to abs().
This change also contains a small update to .gitignore to ignore the
binaries directory and CMake artifacts created by build.sh.
Mike McLaughlin [Sat, 21 Feb 2015 18:53:01 +0000 (10:53 -0800)]
Merge pull request #3 from kangaroo/soscommand1-osx
OSX Support
Rich Lander [Sat, 21 Feb 2015 15:56:47 +0000 (07:56 -0800)]
Merge pull request #316 from richlander/master
Add dotnet standards doc
Jan Vorlicek [Sat, 21 Feb 2015 01:20:44 +0000 (02:20 +0100)]
Merge pull request #312 from janvorli/pal-exception-tests
Enable several PAL exception tests
Geoff Norton [Sat, 21 Feb 2015 01:16:31 +0000 (17:16 -0800)]
Fix SOS command to not break the OSX build, and be linkable against apples LLDB.framework
Jan Vorlicek [Sat, 21 Feb 2015 01:16:27 +0000 (02:16 +0100)]
Fix cfi annotation for NDirectImportThunk and JIT_RareDisableHelper
The title says all
Pat Gavlin [Sat, 21 Feb 2015 00:41:27 +0000 (16:41 -0800)]
Merge pull request #313 from pgavlin/LibUnwindCheck
Move the error that is emitted when libunwind is missing into CMake.
Rich Lander [Sat, 21 Feb 2015 00:34:40 +0000 (16:34 -0800)]
Add dotnet standards doc
Pat Gavlin [Fri, 20 Feb 2015 23:53:39 +0000 (15:53 -0800)]
Move the error that is emitted when libunwind is missing into CMake.
This provides a friendlier user experience when libunwind is not
installed, as configuration fails earlier than the build does.
Jan Vorlicek [Fri, 20 Feb 2015 23:28:15 +0000 (00:28 +0100)]
Remove duplicate check for number of exception arguments
I have added a check for the exception arguments in my last commit, but it turns
out there was already one, only in a wrong place. So the exceptionRecord.NumberParameters
was set incorrectly to the unclipped value.
Mike McLaughlin [Fri, 20 Feb 2015 23:10:11 +0000 (15:10 -0800)]
More review feedback changes. Fixed message when the sos module isn't found. Changed the plugin make file to build on OSx only if the environment vars are set. Fixed IP2MD command on windows.