Jan Kotas [Sat, 7 Feb 2015 17:15:06 +0000 (09:15 -0800)]
Merge pull request #130 from njy/patch-1
possible unresolved tension
Jan Kotas [Sat, 7 Feb 2015 16:58:04 +0000 (08:58 -0800)]
Merge pull request #119 from cwmiller/fix-linux-short-filenames
Fix std::out_of_range exception with short filenames (Linux)
njy [Sat, 7 Feb 2015 12:28:41 +0000 (13:28 +0100)]
possible unresolved tension
http://xkcd.com/859/
Jan Kotas [Sat, 7 Feb 2015 10:29:31 +0000 (02:29 -0800)]
Merge pull request #75 from PashaPash/resourceset_deadlock
Fixed deadlock in System.Resources.ResourceSet
Jan Kotas [Sat, 7 Feb 2015 10:14:47 +0000 (02:14 -0800)]
Merge pull request #125 from kangaroo/issue-120
-nostdinc++ is not recognized by apple clang, but its also not needed
Jan Kotas [Sat, 7 Feb 2015 10:03:18 +0000 (02:03 -0800)]
Merge pull request #126 from vkairys/documentation-links
Update intro-to-clr.md
vkairys [Sat, 7 Feb 2015 08:28:46 +0000 (10:28 +0200)]
Update intro-to-clr.md
Geoff Norton [Sat, 7 Feb 2015 06:41:41 +0000 (22:41 -0800)]
-nostdinc++ is not recognized by apple clang, but its also not needed
Jan Kotas [Sat, 7 Feb 2015 03:49:05 +0000 (19:49 -0800)]
Merge pull request #117 from kangaroo/osx
Initial Mac OSX Support
Geoff Norton [Sat, 7 Feb 2015 03:18:03 +0000 (19:18 -0800)]
Remove static casting in favor of a helper method so we retain type safety with the compiler
Chase Miller [Sat, 7 Feb 2015 03:04:39 +0000 (22:04 -0500)]
Fix std::out_of_range exception with short filenames (Linux)
An unsigned integer was being used while scanning the CLR path to locate assemblies. If a file existed in the directory with a name shorter than the longest extension being checked for (.ni.dll), then the variable would underflow and cause an exception when used as an index on the filename.
Geoff Norton [Sat, 7 Feb 2015 02:53:57 +0000 (18:53 -0800)]
Refactor to be explicit about the fact that there is no handler yet
Geoff Norton [Sat, 7 Feb 2015 02:51:55 +0000 (18:51 -0800)]
Remove PowerPC code, as its unused anymore
Geoff Norton [Sat, 7 Feb 2015 02:51:33 +0000 (18:51 -0800)]
Remove the old version of DBG_CheckStackAlignment and make sure the assembly version is guarded on _DEBUG like the original
Geoff Norton [Sat, 7 Feb 2015 02:48:29 +0000 (18:48 -0800)]
Remove dead NPROCS code now that we use getconf
Geoff Norton [Sat, 7 Feb 2015 02:40:15 +0000 (18:40 -0800)]
Remove cordbi from the OSX build, since its still missing some symbols
Geoff Norton [Sat, 7 Feb 2015 01:09:25 +0000 (17:09 -0800)]
Refactor the DBG_CheckStackAlignment support to be more consistent with the rest of the PAL
Geoff Norton [Sat, 7 Feb 2015 00:39:28 +0000 (16:39 -0800)]
Fixup a few changes missed when rebasing OSX support
Initially __LINUX__ was defined when building for OSX as well, bringing
in LONGDOUBLE_IS_DOUBLE 1, and some of the local SEH funcations.
Add a __APPLE__ guard around these as well, so they're properly included.
Geoff Norton [Wed, 4 Feb 2015 05:18:43 +0000 (21:18 -0800)]
Initial Mac OSX Support
Supports building up the VM, PAL and various components on Mac OSX 10.10
There are some oddities with the Apple assembler not generating short jumps
and not supporting 1 byte relocs.
Jan Kotas [Fri, 6 Feb 2015 23:14:47 +0000 (15:14 -0800)]
Merge pull request #100 from xyziemba/parallel_make
Use # of processors + 1 available to OS scheduler on Linux when building
Jan Kotas [Fri, 6 Feb 2015 22:42:56 +0000 (14:42 -0800)]
Merge pull request #115 from richlander/master
Initial commit of 'Introduction to the CLR'
Senthil [Fri, 6 Feb 2015 21:37:57 +0000 (13:37 -0800)]
Merge pull request #86 from maksqwe/assertion_search_fix
Fix non-null assertion search in assertion table
Vance Morrison [Fri, 6 Feb 2015 21:30:24 +0000 (13:30 -0800)]
Initial commit of 'Introduction to the CLR'
Pavel Pochobut [Wed, 4 Feb 2015 18:49:32 +0000 (21:49 +0300)]
Fixed deadlock in System.Resources.ResourceSet
ResourceSet internal enumerator uses the following lock order:
1. lock _resCache (as _reader._resCache)
in System.Resources.ResourceSet+ResourceEnumerator.Entry
2. lock reader (this)
in the body on of _reader.AllocateStringForNameIndex
RuntimeResourceSet.GetObject uses the following lock order:
1. Lock on reader
2. Lock on _resCache
(on the same instance as passed to the reader ctor)
That causes deadlock when one thread tries to enumerate the ResourceSet
while another thread reads a specific object from the same set.
Added lock in System.Resources.ResourceSet+ResourceEnumerator.Entry,
so both code paths locks on reader first.
Fix Connect Issue ID #580259
Jan Kotas [Fri, 6 Feb 2015 17:49:49 +0000 (09:49 -0800)]
Merge pull request #112 from kangaroo/drop-librt
Remote -lrt from the link as its not needed, and not cross platform
Geoff Norton [Wed, 4 Feb 2015 18:58:39 +0000 (10:58 -0800)]
lrt is not cross platform, lets put this back in when we verify this branch on linux
Jan Kotas [Fri, 6 Feb 2015 15:27:44 +0000 (07:27 -0800)]
Merge pull request #109 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Vorlicek [Fri, 6 Feb 2015 14:48:20 +0000 (06:48 -0800)]
Fix missing CHAIN_SUCCESS_COUNTER symbol in libcoreclr.so
Certain versions of the clang toolchain build libcoreclr.so with this symbol undefined. This symbol is just an alias of g_dispatch_cache_chain_success_counter and the issue was probably caused by the fact that we pass the CHAIN_SUCCESS_COUNTER as a parameter to macro and that macro then appends the @GOTPCREL to the symbol. It seems that in the problematic case, the assembler appends the @GOTPCREL to the CHAIN_SUCCESS_COUNTER instead of the original g_dispatch_cache_chain_success_counter symbol.
Changing the
CHAIN_SUCCESS_COUNTER = g_dispatch_cache_chain_success_counter
to
#define CHAIN_SUCCESS_COUNTER g_dispatch_cache_chain_success_counter
fixes the issue.
[tfs-changeset: 1411600]
Jan Kotas [Fri, 6 Feb 2015 13:22:47 +0000 (05:22 -0800)]
Merge pull request #107 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Vorlicek [Fri, 6 Feb 2015 12:31:14 +0000 (04:31 -0800)]
Fix several warnings in Linux build
1) Usage of partially uninitialized variable when the compiler didn't know the condition is always true. This condition was calling a VolatileRead and only the VolatileRead actually matters so that right PDB annotation is generated and not optimized out in debug optimized builds. So I've removed the if.
2) Usage of nostdinc++ option as a general option - it complained when building C files
3) Usage of an unknown warning disabling compiler option with clang 3.5. The option was needed for clang 3.5.1 and later.
4) Usage of partially uninitialized variable in daccess.cpp - there is a code path that the compiler can see that doesn't initialize the status variable.
5) Empty body of a for loop warning in one or two PAL tests.
[tfs-changeset: 1411579]
Jan Kotas [Fri, 6 Feb 2015 04:42:23 +0000 (20:42 -0800)]
Merge pull request #104 from dotnet-bot/from-tfs
Merge changes from TFS
Xy Ziemba [Fri, 6 Feb 2015 03:22:51 +0000 (19:22 -0800)]
Use N+1 processors instead of N procs on Linux build
N+1 processors appears to perform 2-3% faster than using
just N processors. I've done an A/B test both locally and on
a cloud VM.
Fixes for this and the previous commit were reported by Sedar
Dilek <sedar.dilek@gmail.com>. Thanks!
Eugene Zemtsov [Fri, 6 Feb 2015 03:05:53 +0000 (19:05 -0800)]
Fix build on Linux by resolving case sensitivity issues in md/datasource
[tfs-changeset: 1411310]
Xy Ziemba [Fri, 6 Feb 2015 02:02:19 +0000 (18:02 -0800)]
Use # of processors availabe to OS scheduler on Linux
`getconf _NPROCESSORS_ONLN` provides the number of cores available to
the OS scheduler, while `nproc` provides the number of cores available
to `nproc` itself. We want to use the former value since make spawns
new processes instead of running compilation tasks in the same process.
(FWIW, the two values are usually the same, but `getconf` gets us the
value that we actually want.)
Additionally, `getconf` is available on Mac OSX while `nproc` is not.
I also fixed the printout of the `make` command that's actually
executed when we build.
Matt Mitchell [Fri, 6 Feb 2015 00:38:11 +0000 (00:38 +0000)]
Merge pull request #96 from mmitche/exe-pdbs
Enable PDB generation for corerun and coreconsole
Pat Gavlin [Fri, 6 Feb 2015 00:08:54 +0000 (16:08 -0800)]
Merge pull request #82 from pgavlin/master
Build fixes for clang3.7 and systems without stropt.h.
Matt Mitchell [Thu, 5 Feb 2015 22:42:03 +0000 (14:42 -0800)]
Enable PDB generation for corerun and coreconsole
Corerun and coreconsole are exes, so they don't share the same linker flags as the shared libraries. Set DEBUG on the EXE flags so that Release always gets debug info.
Don't pass incremental linking, incompatible with debug type
Eugene Zemtsov [Thu, 5 Feb 2015 22:19:32 +0000 (14:19 -0800)]
Make DBI build on Linux
- Compile DBI on Linux.
- Link DBI on Linux to the point when only symbols related to INativePipeline are missing.
In order to completely link DBI we'll have to do some development, and it will be addressed by a separate change.
[tfs-changeset: 1411066]
AlexGhiondea [Thu, 5 Feb 2015 22:09:34 +0000 (14:09 -0800)]
Merge pull request #93 from mmitche/fix-build-error-codes
Fix build.cmd return codes
Matt Mitchell [Thu, 5 Feb 2015 16:51:03 +0000 (08:51 -0800)]
Fix build.cmd return codes
Build script was accidentally wiping the return code of the first msbuild step, causing us to continue building even in failure. Fix this and do a little extra cleanup.
Xy Ziemba [Thu, 5 Feb 2015 19:30:07 +0000 (11:30 -0800)]
Merge pull request #50 from xyziemba/build_fix_1
Make build type and build.sh case insensitive
Xy Ziemba [Thu, 5 Feb 2015 18:56:49 +0000 (10:56 -0800)]
Fix Typo in messages within CMakeLists.txt
"DEBUG, RELEASE and RELWITHDEBINFO" becomes
"DEBUG, RELEASE, or RELWITHDEBINFO"
Xy Ziemba [Thu, 5 Feb 2015 18:09:33 +0000 (10:09 -0800)]
Modify else/endif statements to remove optional expressions
This change removes the expressions within the elseif and
endif blocks. This aligns my changes with pull #69 and should
prevent a merge conflict.
Matt Mitchell [Thu, 5 Feb 2015 16:05:42 +0000 (16:05 +0000)]
Merge pull request #66 from cwmiller/master
Fix build.sh variables
Pat Gavlin [Thu, 5 Feb 2015 00:59:45 +0000 (16:59 -0800)]
Build fixes for clang3.7 and systems without stropt.h.
- Fix setup-compiler-clang to detect binaries outside of /usr/bin
- Fix ambiguously-sized cmp instructions when comparing g_GCShadow and 0
- Remove references to stropt.h. None of the defiinitions in this header
are used by the product, and this header is not present on certain
systems.
Jan Kotas [Thu, 5 Feb 2015 07:44:16 +0000 (23:44 -0800)]
Merge pull request #42 from pborreli/typos
Fixed typos
Maks Naumov [Thu, 5 Feb 2015 07:07:22 +0000 (09:07 +0200)]
Fix non-null assertion search in assertion table
if (impAssertion->assertionKind != OAK_NOT_EQUAL ||
impAssertion->op1.kind != O1K_LCLVAR ||
impAssertion->op1.kind != O2K_CONST_INT ||
impAssertion->op1.vn != chkAssertion->op1.vn)
This condition is always true.
Jan Kotas [Thu, 5 Feb 2015 00:58:52 +0000 (16:58 -0800)]
Merge pull request #80 from sergiy-k/binplace-on-linux
Enable binplacing of native CoreCLR binaries on Linux
Xy Ziemba [Wed, 4 Feb 2015 23:11:50 +0000 (15:11 -0800)]
Add default values to CMAKE_BUILD_TYPE
This helps interactive CMake config tools populate the options
to display for the CMAKE_BUILD_TYPE variable.
Sergiy Kuryata [Wed, 4 Feb 2015 21:59:44 +0000 (13:59 -0800)]
Enable binplacing of native CoreCLR binaries on Linux
This change adds support for binplacing native CoreCLR binaries on Linux to "$__RootBinDir/Product/$__BuildArch/$__BuildType". It reuses the mechanism that we currently have in place for Windows. Similarly to binplace implementation for Windows, it sets an environment variable (__CMakeBinDir) in build.sh and then uses its value in clang-compiler-override.txt to set CMAKE_INSTALL_PREFIX to the desired target location.
Chase Miller [Wed, 4 Feb 2015 16:31:58 +0000 (16:31 +0000)]
Fixed variable issues in build.sh
The clean argument wasn't properly setting the __CleanBuild variable to trigger the clean build operation.
The current build target/type message was using CMD variable substitution syntax instead of BASH.
Jan Kotas [Wed, 4 Feb 2015 21:18:29 +0000 (13:18 -0800)]
Merge pull request #36 from benaadams/patch-1
Avoid unnecessary work for identical locations in Buffer.BlockCopy
Ben Adams [Tue, 3 Feb 2015 21:41:36 +0000 (21:41 +0000)]
Avoid unnecessary work for identical locations in Buffer.BlockCopy
Perform validity checks to ensure parameters are correct but short-circuit
out memmove when exactly the same data would be copied to the same location.
There are a number of occasions; which can be intentional or unintentional,
where the buffer being copied is the same place - e.g an internal buffer is
the same as the return buffer, and there is no need to call memmove's
overwrite safe copy.
Generally the call to BlockCopy will be in a library so it is more practical
to enable the check here rather than alter all the calling functions,
including 3rd party libraries to preform additional checks.
AlexGhiondea [Wed, 4 Feb 2015 19:09:39 +0000 (11:09 -0800)]
Merge pull request #64 from gablank/linux-build-args
Update usage text to show correct arguments.
AlexGhiondea [Wed, 4 Feb 2015 18:54:14 +0000 (10:54 -0800)]
Merge pull request #71 from Alexx999/fix_issue_68
Fix build inside badly named directory
Anders Wenhaug [Wed, 4 Feb 2015 18:41:24 +0000 (19:41 +0100)]
Update usage text to show correct arguments.
The usage text printed the arguments with a capital letter,
whilst the script looked for the same arguments but without
the leading capital letter.
Also reordered the argument help list so it is in the same
order as the script accepts them.
Pascal Borreli [Wed, 4 Feb 2015 00:50:32 +0000 (00:50 +0000)]
Fixed typos
Alexander Vostres [Wed, 4 Feb 2015 17:47:56 +0000 (19:47 +0200)]
Fix build failure with message "Cannot create a package that has no dependencies nor content." #68
Jan Kotas [Wed, 4 Feb 2015 17:29:46 +0000 (09:29 -0800)]
Merge pull request #67 from mogemimi/fix-typo
Fix typo: VT_UNKOWN -> VT_UNKNOWN
Matt Mitchell [Wed, 4 Feb 2015 17:23:22 +0000 (17:23 +0000)]
Merge pull request #56 from maksqwe/fix_get_jit_manager_list
Fix "pNeeded" increment in GetJitManagerList()
mogemimi [Wed, 4 Feb 2015 16:36:02 +0000 (01:36 +0900)]
Fix typo: VT_UNKOWN -> VT_UNKNOWN
Jan Kotas [Wed, 4 Feb 2015 16:10:02 +0000 (08:10 -0800)]
Merge pull request #62 from GeorgeSapkin/comments
Fixed typos
Jan Kotas [Wed, 4 Feb 2015 16:07:42 +0000 (08:07 -0800)]
Merge pull request #53 from ellismg/clean-unicode-characters
Remove non ASCII characters from source files
Jan Kotas [Wed, 4 Feb 2015 15:20:04 +0000 (07:20 -0800)]
Merge pull request #58 from ellismg/fix-h2inc-line-wrapping
Fix h2inc.ps1 generating invalid files on Windows 7
Jan Kotas [Wed, 4 Feb 2015 15:19:17 +0000 (07:19 -0800)]
Merge pull request #46 from AlexGhiondea/master
Remove extraneous mscorlib.txt file
George Sapkin [Wed, 4 Feb 2015 14:42:03 +0000 (15:42 +0100)]
Fixed type: more_spacee_lock > more_space_lock
George Sapkin [Wed, 4 Feb 2015 14:27:35 +0000 (15:27 +0100)]
Fixed typo: gc_reaon > gc_reason
Matt Ellis [Wed, 4 Feb 2015 09:27:56 +0000 (01:27 -0800)]
Fix h2inc.ps1 generating invalid files on Windows 7
On PowerShell 2.0, text written via Write-Output is wrapped based on
the current console settings, even when output is redirected to a
file. This means that the include file we generate will have lines
hard wrapped unless the console is configured to have a width of >
~140 characters. PowerShell 3.0 doesn't seem to have this issue (or
the default width is high enought that we don't run into the
limitation), but PowerShell 2.0 is the default on Windows 7.
This fix explicitly calls Console.WriteLine, which will cause the
output to not be wrapped. Doing things this way means we don't have to
play around with the host's buffer size.
Fixes #57
Maks Naumov [Wed, 4 Feb 2015 08:26:41 +0000 (10:26 +0200)]
Fix "pNeeded" increment in GetJitManagerList()
"++" has a higher priority than "*".
Matt Ellis [Wed, 4 Feb 2015 03:27:37 +0000 (19:27 -0800)]
Remove non ASCII characters from source files
Our native files were more or less encoded in Windows-1252, which
causes problems when we try to compile them on machines where the
current codepage can't represent everything that Windows-1252
can. With this conversion I just moved characters to their ASCII
counterparts (e.g. no smart quotes, the section marker glyph is now
"Section"). There were two places where I couldn't do the straight
forward thing, in object.h we wanted to insert the Per Mille symbol in
a comment so instead I just spelled out the Unicode codepoint. In
morph.cpp, there was a comment pointing to a paper by Torbjörn
Granlund (note the diaeresis above the second o). In this case,
unfortuntely I had to just drop the diaeresis. However, searching for
"Torbjorn Granlund" will lead you to the right person.
Fixes #49
Sergiy Kuryata [Wed, 4 Feb 2015 03:05:58 +0000 (19:05 -0800)]
Merge pull request #48 from ellismg/move-shebang-to-top-of-file
Move shebang to top of shell scripts
Xy Ziemba [Wed, 4 Feb 2015 02:29:51 +0000 (18:29 -0800)]
Make build type and build.sh case insensitive
Before this change, build.sh requires lowercase commands, but
CMAKE_BUILD_TYPE required an uppercase parameter. This fixes that
mismatch by making both case insensitive.
Rich Lander [Wed, 4 Feb 2015 02:11:58 +0000 (18:11 -0800)]
Merge pull request #23 from adityam/patch-2
Correct typo and link to the correct license file
Matt Ellis [Wed, 4 Feb 2015 02:08:38 +0000 (18:08 -0800)]
Move shebang to top of shell scripts
This line should be at the top of the file, not after
comments. Otherwise the correct shell is not picked in some cases
(like when you the scripts file via sudo).
Matt Ellis [Wed, 4 Feb 2015 01:27:04 +0000 (17:27 -0800)]
Merge pull request #41 from dotnet-bot/from-tfs
Merge changes from TFS
alexghiondea [Wed, 4 Feb 2015 00:02:50 +0000 (16:02 -0800)]
Remove extraneous mscorlib.txt file
Jan Vorlicek [Wed, 4 Feb 2015 00:02:18 +0000 (16:02 -0800)]
Move the windows unwinder code out of the debug folder.
It is a preparation for using the DAC unwinder code as an unwinder
for the jitted code on Linux, because the jitter generates windows
style unwind info.
The unwinder is build as a static library and linked to mscordac.
[tfs-changeset: 1409640]
Jan Vorlicek [Tue, 3 Feb 2015 23:19:03 +0000 (00:19 +0100)]
Merge pull request #35 from SirCmpwn/fix-linux-build
Fix error locating llvm-ar during build on Linux
Rama krishnan Raghupathy [Tue, 3 Feb 2015 23:00:38 +0000 (15:00 -0800)]
Merge pull request #38 from ramarag/GC_test
Fixes #37 Missing Files to build GC stress Tests
Drew DeVault [Tue, 3 Feb 2015 21:31:21 +0000 (14:31 -0700)]
Fix error locating llvm-ar during build on Linux
This manually locates the llvm toolchain and sets the relevant cmake
variables. The _CMAKE_TOOLCHAIN_PREFIX variable is internal and
undocumented and should probably be avoided.
Rama krishnan Raghupathy [Tue, 3 Feb 2015 22:05:49 +0000 (14:05 -0800)]
Missing Files to build GC stress Tests
Jan Kotas [Tue, 3 Feb 2015 21:58:45 +0000 (13:58 -0800)]
Merge pull request #32 from jasssonpet/master
Correct typos in paraminstanceapi.h
dotnet-bot [Tue, 3 Feb 2015 21:54:22 +0000 (13:54 -0800)]
Update link in PATENTS.txt
Jason Zhekov [Tue, 3 Feb 2015 20:42:57 +0000 (22:42 +0200)]
Correct typos in paraminstanceapi.h
Matt Ellis [Tue, 3 Feb 2015 19:15:38 +0000 (11:15 -0800)]
Merge pull request #20 from ellismg/fix-mscorlib-warnings
Fix mscorlib warnings.
Matt Ellis [Tue, 3 Feb 2015 19:15:34 +0000 (11:15 -0800)]
Merge pull request #21 from AlexGhiondea/master
Update copyright header
Matt Ellis [Tue, 3 Feb 2015 19:15:23 +0000 (11:15 -0800)]
Merge pull request #24 from DnlHarvey/patch-2
Update README.md
Daniel Harvey [Tue, 3 Feb 2015 19:05:41 +0000 (11:05 -0800)]
Update README.md
- Fix the coreclr blog post to go to the right link.
Gaurav Khanna [Tue, 3 Feb 2015 19:03:27 +0000 (11:03 -0800)]
Merge pull request #19 from weshaggard/FixCMakeMessage
Update the CMake requirement message in build.cmd.
Aditya Mahajan [Tue, 3 Feb 2015 18:57:59 +0000 (13:57 -0500)]
Correct typo and link to the correct license file
dotnet-bot [Tue, 3 Feb 2015 18:27:36 +0000 (10:27 -0800)]
Update copyright header
Wes Haggard [Tue, 3 Feb 2015 18:23:59 +0000 (10:23 -0800)]
Update the CMake requirement message in build.cmd.
Matt Ellis [Tue, 3 Feb 2015 18:18:32 +0000 (10:18 -0800)]
Fix mscorlib warnings.
PinnableBufferCache uses some of the declaritive CAS attributes which
don't mean anything on CoreCLR. We had disabled this warning
internally, but this copy of the file is specific to open source and
we didn't disable it in this file.
This simply ports the change to disable this warning to mscorlib's
copy of the file.
Matt Mitchell [Tue, 3 Feb 2015 18:03:55 +0000 (18:03 +0000)]
Merge pull request #18 from mmitche/update-job-names
Update job names
Matt Mitchell [Tue, 3 Feb 2015 18:02:50 +0000 (10:02 -0800)]
Update job names
Gaurav Khanna [Tue, 3 Feb 2015 13:00:32 +0000 (05:00 -0800)]
Merge pull request #15 from xyziemba/master
Parallelize Linux build by adding "-j `nproc`" to make
Rama krishnan Raghupathy [Tue, 3 Feb 2015 07:29:55 +0000 (23:29 -0800)]
Merge pull request #13 from ramarag/GC_test_build
Enabling GC Stress test build
Xy Ziemba [Tue, 3 Feb 2015 07:18:05 +0000 (23:18 -0800)]
Parallelize Linux build by adding "-j `nproc`" to make
Matt Ellis [Tue, 3 Feb 2015 06:18:23 +0000 (22:18 -0800)]
Merge pull request #14 from dotnet-bot/from-tfs
Merge changes from TFS
Lubomir Litchev [Tue, 3 Feb 2015 05:19:02 +0000 (21:19 -0800)]
This change fixes a potential problem in unwinding on Linux. PUSH and POP instructions were used to preserve RSI/RDI on the stack when stosd instructions are used to initialize the stack vars. These registers are used as the first two parameters to pass parameters to a callee.
The change makes sure there is a FrameRegisterUsed if these PUSH/POPs need to occur. If there is no FrameRegister, the unwinding, if attempted between the first PUSH and the last POP would cause incorrect unwinding of the stack.
SharedCodebaseChange: Yes
SharedCodebaseChangeRisk: Low
[tfs-changeset: 1409112]