Jan Vorlicek [Thu, 12 Mar 2015 19:49:36 +0000 (20:49 +0100)]
Merge pull request #432 from kangaroo/pal-glccfos
Implement GetLogicalCpuCountFromOS in the PAL for OSX
Lubomir Litchev [Thu, 12 Mar 2015 18:07:27 +0000 (11:07 -0700)]
Merge pull request #427 from LLITCHEV/work
Fix some struct passing and tail call Jit problems on System V type of O...
Lubomir Litchev [Tue, 10 Mar 2015 21:27:39 +0000 (14:27 -0700)]
Fix some struct passing and tail call Jit problems on System V type of OSs.
This change set contains the following:
1. Removes the PUSH/POP for RDI/RSI functionality from the Jit for Linux. Replaced with
standard register tracking and spilling by the RA.
2. Initialize the non stack homed, register passed param stack offset to 0
and allow the fixup routines to operate on the offset. Tail calls
implementation depends on the offset of the first param be set properly.
3. Initial work to allow for frame chaining using a FP register.
Geoff Norton [Wed, 11 Mar 2015 17:55:28 +0000 (10:55 -0700)]
Implement GetLogicalCpuCountFromOS in the PAL for OSX
Jan Kotas [Wed, 11 Mar 2015 22:04:47 +0000 (15:04 -0700)]
Merge pull request #434 from AlexGhiondea/concurrentDict
Remove the CDS_COMPILE_JUST_THIS define from the ConcurrentDictionary.cs file
AlexGhiondea [Wed, 11 Mar 2015 21:28:52 +0000 (14:28 -0700)]
Merge pull request #418 from AlexGhiondea/AppContextFix
Make sure that AppContext respects CompatibilitySwitches.IsAppSilverlight81 flag
Alex Ghiondea [Wed, 11 Mar 2015 20:48:48 +0000 (13:48 -0700)]
Remove the CDS_COMPILE_JUST_THIS define from the ConcurrentDictionary.cs file.
We are not going to build that file stand-alone anymore.
Jan Vorlicek [Wed, 11 Mar 2015 09:30:11 +0000 (10:30 +0100)]
Merge pull request #429 from jkotas/testfixes
Fix error handling in REGUTIL::EnvGetString
Jan Kotas [Tue, 10 Mar 2015 05:18:27 +0000 (22:18 -0700)]
Fix error handling in REGUTIL::EnvGetString
Matt Ellis [Wed, 11 Mar 2015 05:35:31 +0000 (22:35 -0700)]
Merge pull request #428 from ellismg/custom-entry-point
Add custom entry point support.
Matt Ellis [Tue, 3 Mar 2015 06:48:35 +0000 (22:48 -0800)]
Add custom entry point support.
Hosts like ASP.net don't want to call ExecuteAssembly, because their
entry point is library, not a managed exe. However, forcing cross
platform hosts to actually call CreateAppDomainWithManager and
CreateDelegate themselves requires a bunch of tedious code, since these
hosts don't have access to mscoree.h and the PAL.
This change adds the ability to specificy an assembly, type and method
which can be used as a custom entrypoint. The signiture of the managed
entry point needs to be `static int E(int, char**)`.
Rama krishnan Raghupathy [Tue, 10 Mar 2015 21:07:06 +0000 (14:07 -0700)]
Merge pull request #426 from ramarag/merge-from-tfs
Merge from tfs
Rama krishnan Raghupathy [Tue, 10 Mar 2015 19:38:01 +0000 (12:38 -0700)]
Merge remote-tracking branch 'upstream/master' into merge-from-tfs
Resolved Merge Conflict:
tests/src/AllTestProjects.sln
Alex Ghiondea [Mon, 9 Mar 2015 22:15:04 +0000 (15:15 -0700)]
Make sure that AppContext respects CompatibilitySwitches.IsAppSilverlight81 flag.
This flag is used in cases where we don't have a Main() which means we won't be
able to read the TFM. Setting this compatibility flag will force the TFM to be
'WindowsPhone, Version=8.1".
Jan Kotas [Tue, 10 Mar 2015 18:34:54 +0000 (11:34 -0700)]
Merge pull request #425 from jkotas/jitpinvokefix
Fix trashing of P/Invoke return value by GC probe
Matt Mitchell [Tue, 10 Mar 2015 17:05:15 +0000 (10:05 -0700)]
Merge pull request #416 from janhenke/master
Do not hardcode path to bash into the shell scripts.
Jan Kotas [Tue, 10 Mar 2015 16:16:40 +0000 (09:16 -0700)]
Merge pull request #423 from jkotas/timerfix
Avoid call to QueryUnbiasedInterruptTime for PAL
Jan Henke [Mon, 9 Mar 2015 17:55:24 +0000 (18:55 +0100)]
Do not hardcode path to bash into the shell scripts.
Use /usr/bin/env bash to discover bash, independet of actual path. Closes #204.
Jan Kotas [Tue, 10 Mar 2015 05:46:43 +0000 (22:46 -0700)]
Avoid call to QueryUnbiasedInterruptTime for PAL
Mike McLaughlin [Tue, 10 Mar 2015 00:26:52 +0000 (17:26 -0700)]
Merge pull request #400 from mikem8361/dacglobals1
Implement the DAC global pointer table for Linux
Jan Kotas [Mon, 9 Mar 2015 23:17:05 +0000 (16:17 -0700)]
Merge pull request #419 from ellismg/unblock-datetime-now
Return null for GetLocalTzFile
Mike McLaughlin [Mon, 9 Mar 2015 23:06:20 +0000 (16:06 -0700)]
Merge remote-tracking branch 'upstream/master' into dacglobals1
Mike McLaughlin [Mon, 9 Mar 2015 23:05:13 +0000 (16:05 -0700)]
Fix sos on window's build.
Matt Ellis [Mon, 9 Mar 2015 22:09:20 +0000 (15:09 -0700)]
Return null for GetLocalTzFile
Throwing an exception from GetLocalTzFile causes DateTime.Now to throw
an exception and the runtime to tear down. While we are bringing up
the globalization stack on Unix, we can just return null instead of
throwing. This will cause us to use a zero UTC offset, so the local
times will not actually match the local clock, but we will be able to
get further along.
Jan Kotas [Mon, 9 Mar 2015 19:22:10 +0000 (12:22 -0700)]
Merge pull request #415 from jkotas/zapwriter
Fix size computation in ZapWriter::WritePad
Matt Mitchell [Mon, 9 Mar 2015 15:14:29 +0000 (08:14 -0700)]
Merge pull request #411 from ramarag/fix_test_msbuild_warnings
Adding app.config to get rid of the warning MSB3276 in the Test Build
Jan Kotas [Mon, 9 Mar 2015 13:40:13 +0000 (06:40 -0700)]
Fix size computation in ZapWriter::WritePad
Jan Vorlicek [Mon, 9 Mar 2015 09:41:54 +0000 (10:41 +0100)]
Merge pull request #414 from jkotas/assertfix
Make assertion failures to break into debugger
Jan Kotas [Mon, 9 Mar 2015 03:13:25 +0000 (20:13 -0700)]
Make assertion failures to break into debugger
Rama krishnan Raghupathy [Sat, 7 Mar 2015 04:16:24 +0000 (20:16 -0800)]
Adding app.config to get rid of the warning MSB3276
Rama Krishnan Raghupathy [Sat, 7 Mar 2015 02:15:55 +0000 (18:15 -0800)]
With This change the tests build all the native components first and then builds the managed components. The managed components can refer to the native projects by the following construct in the .csproj
<ProjectReference Include="CMakeLists.txt">
[tfs-changeset: 1427574]
Matt Ellis [Sat, 7 Mar 2015 01:08:38 +0000 (17:08 -0800)]
Merge pull request #409 from ellismg/fix-file-mode
Change file modes of .PNGs
Mike McLaughlin [Sat, 7 Mar 2015 00:31:40 +0000 (16:31 -0800)]
Fix method desc name display by using the PAL vsnprintf instead of the regular linux runtime version that doesn't understand %S as an UTF16 string.
Matt Ellis [Sat, 7 Mar 2015 00:00:45 +0000 (16:00 -0800)]
Change file modes of .PNGs
For some reason, some of our png files were marked as executable,
which is a very odd thing to do.
Move them back to the standard file mode.
Mike McLaughlin [Fri, 6 Mar 2015 22:51:27 +0000 (14:51 -0800)]
Merge remote-tracking branch 'upstream/master' into dacglobals1
Conflicts:
src/debug/ee/CMakeLists.txt
Mike McLaughlin [Fri, 6 Mar 2015 22:22:26 +0000 (14:22 -0800)]
Fix the LLDB.h search order and the format character used.
Mike McLaughlin [Fri, 6 Mar 2015 01:06:03 +0000 (17:06 -0800)]
Fixed that IP2MD stopped working after using it, continuing the target and then trying to use it again. Needed to always recreate the IXCLRDataProcess instance each time a command is run.
Mike McLaughlin [Fri, 6 Mar 2015 01:02:56 +0000 (17:02 -0800)]
Allow either lldb-3.6 or lldb-3.5 to be used to build the sos plugin.
Mike McLaughlin [Tue, 24 Feb 2015 23:25:57 +0000 (15:25 -0800)]
Add a fourth parameter to the DEFINE_DACVAR macro that is the actual fully qualified name of the static/global.
First pass at the global DAC table support for Linux. Explicitly build the table in the coreclr module instead of extract it from the pdb and put it in a resource.
Fixed the SVR gc globals in the DAC table. They had to be seperated and initialized in gceesvr.cpp.
Start on global pointer table.
PAL functions to write and read the DAC table address between processes.
The dac table is now copied from the coreclr process to the DAC/debugger process. The tables were not being built with exactly the same defines so they weren't the same size. Fixed a bug in the read memory implementation. Still assumes pid = 0.
Changed the dacTable entries to be RVAs and renabled getting the corclr module base addres (m_globalBase). Added dac table address file cleanup on coreclr shutdown.
Filled in the vtable entries in the global dac table. Changed some of the VPTR_* macros to be defined on the coreclr side (RS) to defined a constructor that is used to get the vtable in dactable.cpp. These changes required default constructors to be added to some of the classes.
Changed getting the vtable address to not invoke the destructors since the constructor used didn't do anything (like initialize variables, etc.).
Added a TODO comment about the debuggee pid not being available in the dac table address file name.
Fixed Windows build. Created a couple of new VPTR_* macros that add a default constructor only if building coreclr (not DAC) on Linux.
Comment on how these DAC table functions are temporary.
Jan Kotas [Fri, 6 Mar 2015 16:52:41 +0000 (08:52 -0800)]
Fix trashing of P/Invoke return value by GC probe
Rich Lander [Fri, 6 Mar 2015 14:48:44 +0000 (06:48 -0800)]
Merge pull request #406 from akatakritos/patch-1
Fix typo in garbage-collection.md
Matt Burke [Fri, 6 Mar 2015 14:04:29 +0000 (08:04 -0600)]
Fix typo in garbage-collection.md
"improtant" -> "important"
Jan Kotas [Fri, 6 Mar 2015 01:51:34 +0000 (17:51 -0800)]
Merge pull request #404 from stephentoub/fix_indexof_unix
Fix exception in CompareInfo.IndexOfOrdinal on Unix
Stephen Toub [Fri, 6 Mar 2015 01:15:54 +0000 (20:15 -0500)]
Fix exception in CompareInfo.IndexOfOrdinal on Unix
A one-character typo is leading to an out of range exception.
Jan Kotas [Fri, 6 Mar 2015 00:47:54 +0000 (16:47 -0800)]
Merge pull request #402 from jkotas/vsdfix
Fix register usage in ResolveWorkerChainLookupAsmStub
Jan Kotas [Thu, 5 Mar 2015 23:50:56 +0000 (15:50 -0800)]
Fix register usage in ResolveWorkerChainLookupAsmStub
This stub has 100% custom calling convention. It gets the argument in rdx even on Unix.
Jan Kotas [Thu, 5 Mar 2015 19:07:13 +0000 (11:07 -0800)]
Merge pull request #397 from Djuffin/net-debug
Pipe based communication between debugee and managed debugger on Linux
Stephen Toub [Thu, 5 Mar 2015 18:43:39 +0000 (13:43 -0500)]
Merge pull request #398 from stephentoub/fix_getlasterror
Reimplement CPalThread::Get/SetLastError in terms of errno
Jan Kotas [Thu, 5 Mar 2015 17:59:55 +0000 (09:59 -0800)]
Merge pull request #399 from richlander/master
Correct name of Ecma standards organization
Rich Lander [Thu, 5 Mar 2015 16:28:23 +0000 (08:28 -0800)]
Correct name of Ecma standards organization
Stephen Toub [Thu, 5 Mar 2015 15:00:57 +0000 (10:00 -0500)]
Reimplement CPalThread::Get/SetLastError in terms of errno
GetLastError in the PAL isn't checking errno, and is instead using its own m_dwLastError. As such, it doesn't properly handle arbitrary P/Inovkes, and all of our P/Invokes to libc are resulting in garbage GetLastWin32Error values, which throws off all of the error handling paths.
This commit just reimplements CPalThread::GetLastError and CPalThread::SetLastError to use errno (defined by POSIX.1c to be per-thread) as the backing store rather than using the m_dwLastError field, which I've removed.
Eugene Zemtsov [Thu, 5 Mar 2015 09:57:56 +0000 (01:57 -0800)]
Rename old Silverlight Mac debugging GUID to avoid confusion
Eugene Zemtsov [Thu, 5 Mar 2015 09:47:24 +0000 (01:47 -0800)]
Rearrange libs in cmakefile for libcoreclr in order to help ld find twowaypipe symbols
Eugene Zemtsov [Wed, 4 Mar 2015 02:20:36 +0000 (18:20 -0800)]
Fix build from msbuild environment
Jan Kotas [Thu, 5 Mar 2015 01:43:19 +0000 (17:43 -0800)]
Merge pull request #396 from swaroop-sridhar/TestEnv
Add Support for Custom Test Environment Settings
Swaroop Sridhar [Thu, 5 Mar 2015 01:13:41 +0000 (17:13 -0800)]
Add Support for Custom Test Environment Settings
RunTest.Cmd had limited suport for setting test environment
(ex: Specifying use of alternate Jit)
This change generalizes this support so that the clients can specify a
test environment script that will be run to set custom settings in
the test-environment.
Usage is:
Runtest TestEnv <test-env-script> ...
Rama krishnan Raghupathy [Wed, 4 Mar 2015 23:02:05 +0000 (15:02 -0800)]
Merge pull request #394 from ramarag/parallelize_tests_within_category
Enabling test within the same category to run in parallel
Rich Lander [Wed, 4 Mar 2015 22:37:34 +0000 (14:37 -0800)]
Merge pull request #395 from cherylws/patch-1
Update index.md
Cheryl Simmons [Wed, 4 Mar 2015 22:09:44 +0000 (14:09 -0800)]
Update index.md
Update the MSDN link to most recent, locale-agnostic, version of the topic.
Rama krishnan Raghupathy [Wed, 4 Mar 2015 21:19:38 +0000 (13:19 -0800)]
Enabling test within the same category to run in parallel
Matt Mitchell [Wed, 4 Mar 2015 15:57:31 +0000 (07:57 -0800)]
Merge pull request #386 from benpye/travis-ci-fix-2
FIx Travis CI release failing
Jan Kotas [Wed, 4 Mar 2015 12:26:30 +0000 (04:26 -0800)]
Merge pull request #391 from jkotas/umthunk
Fix RBP-relative offsets in UMThunkStub
Jan Kotas [Wed, 4 Mar 2015 12:26:17 +0000 (04:26 -0800)]
Merge pull request #392 from jkotas/TypedReference
Introduce FC_TypedByRef for passing TypedReferences as FCall arguments
Ben Pye [Wed, 4 Mar 2015 11:07:10 +0000 (11:07 +0000)]
Disable PAL tests
Jan Kotas [Wed, 4 Mar 2015 04:52:54 +0000 (20:52 -0800)]
Introduce FC_TypedByRef for passing TypedReferences as FCall arguments
FC_TypedByRef is defined as TypedByRef& for now to workaround the mismatch between managed and native struct calling convention.
Jan Kotas [Wed, 4 Mar 2015 04:45:14 +0000 (20:45 -0800)]
Merge pull request #389 from jkotas/memcpy
Fix copy&paste typo in JIT_MemCpy helper
Jan Kotas [Wed, 4 Mar 2015 04:06:03 +0000 (20:06 -0800)]
Fix RBP-relative offsets in UMThunkStub
Jan Kotas [Wed, 4 Mar 2015 02:07:00 +0000 (18:07 -0800)]
Fix copy&paste typo in JIT_MemCpy helper
Jan Kotas [Wed, 4 Mar 2015 01:17:35 +0000 (17:17 -0800)]
Merge pull request #388 from richlander/master
Add Garbage Collection Book of the Runtime Doc
maoni0 [Wed, 4 Mar 2015 01:02:29 +0000 (17:02 -0800)]
Add Garbage Collection Book of the Runtime Doc
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.
Jan Vorlicek [Tue, 3 Mar 2015 22:29:49 +0000 (23:29 +0100)]
Merge pull request #380 from janvorli/exception-handling
Fix CONTEXTFromNativeContext / CONTEXTToNativeContext to handle FP regs
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
Jan Vorlicek [Tue, 3 Mar 2015 21:35:21 +0000 (22:35 +0100)]
Fix GetThreadContext and reflect PR feedback
The GetThreadContext on Linux was not getting the floating point registers even if it was asked
to do so. Moreover, it indicated in the context's ContextFlags that the context contains the
floating point registers. So the RtlRestoreContext has attempted to restore the full context
and filled the floating point registers with junk.
I've modified the GetThreadContext to use the CONTEXTFromNativeContext which fixes the issue.
Also, the CONTEXTFromNativeContext can now get any requested subsets of registers (integer,
control, floating point) instead of enforcing that the integer and control are always present.
Last change is a removal of the contextFlags parameter from the CONTEXTToNativeContext,
since the flags are present in the context itself and it doesn't make sense to specify other
flags than those ones.
Ben Pye [Tue, 3 Mar 2015 21:26:12 +0000 (21:26 +0000)]
FIx Travis CI release failing
Travis CI release mode failed as the test path was always debug rather
than referencing the build matrix.
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
Jan Vorlicek [Tue, 3 Mar 2015 01:36:51 +0000 (02:36 +0100)]
Fix CONTEXTFromNativeContext / CONTEXTToNativeContext to handle FP regs
This change modifies the CONTEXTFromNativeContext / CONTEXTToNativeContext so that
the FP registers, including the Xmm ones, are transferred between the native and
Windows contexts if the CONTEXT_FLOATING_POINT context flag is specified.
This allows the RtlRestoreContext to restore the context including the FP
state on Linux.
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