Andy Ayers [Thu, 4 Feb 2016 22:22:53 +0000 (14:22 -0800)]
Remove assert from the JitInlineResult dtor
Don't assert here, instead rely on existing checks in the
frames that create JitInlineResults to verify an appropriate
decision was made.
Closes #3037.
Gaurav Khanna [Thu, 4 Feb 2016 05:51:05 +0000 (21:51 -0800)]
Merge pull request #3016 from gkhanna79/CFG
Support for Control Flow Guard
Jan Kotas [Thu, 4 Feb 2016 05:34:55 +0000 (21:34 -0800)]
Merge pull request #3021 from krytarowski/netbsd-support-31
Fix build on NetBSD: Stop mixing PAL and system headers in tests
Rahul Kumar [Thu, 4 Feb 2016 04:13:18 +0000 (20:13 -0800)]
Merge pull request #3018 from rahku/master
Fix for test build errors
Rahul Kumar [Thu, 4 Feb 2016 00:47:52 +0000 (16:47 -0800)]
OSGroup value does not get passed along to reference projects. This causes msbuild to build the same project twice because the target bin dir would differ. But the intermediate dir would remain the same. If they happen to build at the same ...this is will cause build errors due to write to same file.
Kamil Rytarowski [Thu, 4 Feb 2016 02:34:09 +0000 (03:34 +0100)]
Fix build on NetBSD: Stop mixing PAL and system headers in tests
Including both system and PAL headers results in clasesh like:
In file included from /tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/tests/palsuite/threading/GetThreadTimes/test1/test1.c:18:
In file included from /usr/include/sched.h:37:
In file included from /usr/include/sys/sched.h:73:
/usr/include/sys/types.h:54:18: error: typedef redefinition with different types ('__int8_t' (aka 'signed char') vs 'char')
typedef __int8_t int8_t;
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/inc/pal_mstypes.h:224:16: note: previous definition is here
typedef __int8 int8_t;
^
This fixes #2993 "Conflicts with system headers on NetBSD"
Thanks to Jan Kotas (Microsoft) for showing the right direction.
Sivarv [Thu, 4 Feb 2016 00:52:44 +0000 (16:52 -0800)]
Merge pull request #3004 from sivarv/master
Fix to assert 'ret->gtGetOp1() == nullptr' failure in morph.cpp
sivarv [Wed, 3 Feb 2016 14:47:52 +0000 (06:47 -0800)]
Fix to assert 'ret->gtGetOp1() == nullptr' failure in morph.cpp
Investigation reveals that the assumption of GT_RETURN stmnt for methods returning struct through hidden RetBuf argument will be of the form GT_RETURN(TYP_VOID, op1=nullptr, op2=nullptr) is incorrect when running under profiler.
Profiler Leave callback requires that methods with struct return, return RetBuf in RAX. For this reason when required to generate Profiler callbacks, importer generates GT_RETURN(BY_REF, addr of retBuf) - see impReturnInstruction()
There is also another issue that fgAddInternal() which adds oneReturn block doesn't take into account of running under profiler and hence doesn't create genReturnLocal var and as a result oneReturn block doesn't return address of retBufArg. When running under profiler what should happen for a method returning struct via hidden RetBuf is as follows:
Say BB01 is any block ending in GT_RETURN(TYP_BYREF, addr of RetBuf). fgAddInternal() will decide to use oneReturn block since running under profiler. Since the method returns addr of RetBuf it should create a genReturnLocal of type TYP_BYREF. fgMorphBlocks() on finding genReturnLocal is valid, will replace GT_RETURN with as assignment of "genReturnLocal = add of RetBuf" and make BB01 to branch to oneReturn block.
Since fgAddInternal() doesn't take into account of running under profiler, it doesn't create genReturnLocal for methods having hidden RetBuf arg. Hence fgMorphBlocks() will find genReturnLocal is not valid and asserts that GT_RETURN must be of TYP_VOID with its op1=op2=nullptr, which is not the case and hence the assert.
Note that this assert will repro only when running under profiler because importer generates GT_RETURN(TYP_BYREF, addr of RetBuf) for methods with hidden RetBuf arg only when required to generate profiler callbacks.
Fix: Take into account of whether asked to generate Profiler callbacks create genReturnLocal.
Also took this opportunity cleaned up unnecessary code that was executing for unix and added new abstractions to check whether the method being compiled has ret val.
Note in case of unix there is no need to call struct classification logic to normalize struct return type returned in a single register because it is already done in lvaInitTypeRef() and assigned to compRetNativeType.
Stephen Toub [Thu, 4 Feb 2016 00:47:59 +0000 (19:47 -0500)]
Update linux-instructions.md
Brian Sullivan [Wed, 3 Feb 2016 23:50:11 +0000 (15:50 -0800)]
Merge pull request #3008 from briansull/fix_arm64
Fix Arm64 test regressions from PR #2954
Gaurav Khanna (CLR) [Wed, 3 Feb 2016 23:26:04 +0000 (15:26 -0800)]
Initial support for CFG. This makes VS 2015 as the minimum required build toolset, on Windows, for the repo.
William Godbe [Wed, 3 Feb 2016 22:23:59 +0000 (14:23 -0800)]
Merge pull request #3011 from wtgodbe/serverGC
Enable server GC on Ubuntu PR test builds in the CI
William Godbe [Wed, 3 Feb 2016 22:23:27 +0000 (14:23 -0800)]
Enable server GC on Ubuntu PR test builds in the CI
Brian Sullivan [Wed, 3 Feb 2016 20:45:55 +0000 (12:45 -0800)]
Fix Arm64 test regressions from PR #2954
Some additional ifdef renaming for the Arm64 target
Updated Test.lst with ISSUE tags for recently opened issues
Kyungwoo Lee [Wed, 3 Feb 2016 20:33:31 +0000 (12:33 -0800)]
Merge pull request #3006 from kyulee1/splitheader
cordebuginfo.h out of corinfo.h
Jan Kotas [Wed, 3 Feb 2016 18:34:53 +0000 (10:34 -0800)]
Merge pull request #3003 from dotnet-bot/from-tfs
Merge changes from TFS
Kyungwoo Lee [Wed, 3 Feb 2016 16:36:54 +0000 (08:36 -0800)]
cordebuginfo.h out of corinfo.h
ICorDebugInfo is almost standalone data structure.
This puts ICorDebugInfo into a new cordebuginfo.h.
This new header file is just included in corinfo.h
This way we could share this debug data structure
with ObjectWriter/LLILC by simply including this header.
Jan Vorlicek [Wed, 3 Feb 2016 16:56:12 +0000 (17:56 +0100)]
Merge pull request #2994 from janvorli/enable-unix-readytorun-tests
Fix warning in Windows build of readytorun tests
Jan Kotas [Wed, 3 Feb 2016 14:18:44 +0000 (06:18 -0800)]
Integrate changes from full .NET Framework
- Custom attribute to suppress NGen with method granularity
- Static contract fixes
- GC fix
[tfs-changeset:
1571860]
Jan Kotas [Wed, 3 Feb 2016 05:17:23 +0000 (21:17 -0800)]
Merge pull request #2997 from kouvel/Finalize
Expose COMPlus_FinalizeOnShutdown in release builds
Eric Erhardt [Wed, 3 Feb 2016 03:51:53 +0000 (21:51 -0600)]
Merge pull request #2891 from eerhardt/Fix2748
TimeZoneInfo.DisplayName values are not localized on Linux
Koundinya Veluri [Wed, 3 Feb 2016 01:18:38 +0000 (17:18 -0800)]
Expose COMPlus_FinalizeOnShutdown in retail builds
To enable a workaround to restore the previous behavior before finalizers stopped running on shutdown by default
Jan Vorlicek [Wed, 3 Feb 2016 01:50:39 +0000 (02:50 +0100)]
Fix warning in Windows build of readytorun tests
There was an extra reference to the test.dll besides the reference to the test
csproj. This was causing warnings during the test build.
Jan Kotas [Wed, 3 Feb 2016 01:13:27 +0000 (17:13 -0800)]
Merge pull request #2974 from krytarowski/netbsd-support-26
Fix build on NetBSD: cast ptr to function to ptr to data
Carol Eidt [Wed, 3 Feb 2016 00:10:47 +0000 (16:10 -0800)]
Merge pull request #2954 from CarolEidt/CallArgCleanup
Outgoing call arg preliminary refactoring
Kamil Rytarowski [Tue, 2 Feb 2016 01:52:32 +0000 (02:52 +0100)]
Fix build on NetBSD: cast ptr to function to ptr to data
Chris McKinsey [Tue, 2 Feb 2016 22:55:00 +0000 (14:55 -0800)]
Merge pull request #2956 from cmckinsey/BenchF2
Add 15 more Benchstone floating-point (BenchF) benchmarks in Xunit fo…
Carol Eidt [Tue, 2 Feb 2016 21:43:06 +0000 (13:43 -0800)]
Merge branch 'master' into CallArgCleanup
Jan Kotas [Tue, 2 Feb 2016 21:30:58 +0000 (13:30 -0800)]
Merge pull request #2986 from jkotas/arm-fixes
Fix build break in Linux arm release build
Lubomir Litchev [Tue, 2 Feb 2016 20:39:11 +0000 (12:39 -0800)]
Merge pull request #2860 from LLITCHEV/gc-stress
Fix for bugs related to clasifying System.TypedReference - issue #2854.
Jan Kotas [Tue, 2 Feb 2016 19:51:10 +0000 (11:51 -0800)]
Fix build break in Linux arm release build
Jan Kotas [Tue, 2 Feb 2016 19:46:41 +0000 (11:46 -0800)]
Merge pull request #2941 from krytarowski/netbsd-support-19
Add support for NetBSD-style gregs on x86
Kyungwoo Lee [Tue, 2 Feb 2016 18:04:34 +0000 (10:04 -0800)]
Merge pull request #2983 from kyulee1/ilasmpdb
Delete spurious ilasm warning message under DEBUG flag
Matt Mitchell [Tue, 2 Feb 2016 17:58:26 +0000 (09:58 -0800)]
Merge pull request #2984 from mmitche/up-timeouts
Increase timeouts for non-windows configs
Matt Mitchell [Tue, 2 Feb 2016 17:54:13 +0000 (09:54 -0800)]
Increase timeouts for non-windows configs
Rahul Kumar [Tue, 2 Feb 2016 17:36:34 +0000 (09:36 -0800)]
Merge pull request #2961 from rahku/updatebuildtools
Update buildtools version for test builds
Jan Kotas [Tue, 2 Feb 2016 16:39:54 +0000 (08:39 -0800)]
Merge pull request #2979 from Dmitry-Me/writeNullPointerOnNoInterface
Write null pointer for unsupported interfaces
Jan Vorlicek [Tue, 2 Feb 2016 15:56:10 +0000 (16:56 +0100)]
Merge pull request #2719 from janvorli/enable-unix-readytorun-tests
Enable unix readytorun tests
Carol Eidt [Mon, 1 Feb 2016 17:41:08 +0000 (09:41 -0800)]
Outgoing call arg preliminary refactoring
Preliminary renaming and cleanup in preparation for further refactoring of outgoing call arguments, particularly multi-reg arguments.
Eric Erhardt [Wed, 27 Jan 2016 23:41:14 +0000 (17:41 -0600)]
TimeZoneInfo.DisplayName values are not localized on Linux
Fixed by calling ICU's ucal_getTimeZoneDisplayName to read the display names for the current locale.
Fix https://github.com/dotnet/corefx/issues/2748
Kyungwoo Lee [Tue, 2 Feb 2016 14:40:42 +0000 (06:40 -0800)]
Delete spurious ilasm warning message under DEBUG flag
When test population, most il tests turn on DEBUG flag, which
caused spurious warnings on ilasm/CoreCLR since PDB is not yet supported.
This changes the warning display to a comment that is linked to a GH issue.
Jan Vorlicek [Mon, 18 Jan 2016 12:34:07 +0000 (13:34 +0100)]
Enable ready to run tests on Unix
This change enables running ready to run tests on Unix.
Jan Kotas [Tue, 2 Feb 2016 08:35:22 +0000 (00:35 -0800)]
Merge pull request #2978 from jkotas/prof-breaks
Fix fallout from enabling profiling
Dmitry-Me [Tue, 2 Feb 2016 07:04:43 +0000 (10:04 +0300)]
Write null pointer for unsupported interfaces
Jan Kotas [Tue, 2 Feb 2016 05:40:35 +0000 (21:40 -0800)]
Merge pull request #2976 from krytarowski/netbsd-support-27
Fix build on NetBSD: Introduce check for pthread_getcpuclockid(3)
Jan Kotas [Tue, 2 Feb 2016 05:38:20 +0000 (21:38 -0800)]
Merge pull request #2977 from krytarowski/netbsd-support-28
Prefer PAL_PTRACE() over hardcoded FreeBSD-style ptrace(2) calls
Jan Kotas [Tue, 2 Feb 2016 05:37:48 +0000 (21:37 -0800)]
Merge pull request #2972 from krytarowski/netbsd-support-24
Fix build on NetBSD: Don't increment iterator twice in for(;;)
Jan Kotas [Tue, 2 Feb 2016 05:34:40 +0000 (21:34 -0800)]
Merge pull request #2971 from krytarowski/netbsd-support-23
Add NetBSD target in src/pal/src/CMakeLists.txt
Kamil Rytarowski [Tue, 2 Feb 2016 01:58:56 +0000 (02:58 +0100)]
Fix build on NetBSD: Introduce check for pthread_getcpuclockid(3)
This function is part of the optional part of POSIX.
It's available in:
- FreeBSD,
- AIX,
- QNX,
- Linux.
It's missing in NetBSD.
According to Jan Kotas (Microsoft) this function is used for undocumented
resource monitoring feature (FEATURE_APPDOMAIN_RESOURCE_MONITORING) and
unlikely anybody is using this today.
Solution suggested in #2947 "NetBSD doesn't implement pthread_getcpuclockid(3)"
Jan Kotas [Tue, 2 Feb 2016 02:13:41 +0000 (18:13 -0800)]
Fix fallout from enabling profiling
- Compiler optimization assumption invalid: EE expects method to exist: System.StubHelpers.StubHelpers:ProfilerBeginTransitionCallback
- Add stubs for ARM
Kamil Rytarowski [Sun, 31 Jan 2016 10:24:44 +0000 (11:24 +0100)]
Add support for NetBSD-style gregs on x86
Floating point regs will be added later.
typedef struct {
__gregset_t __gregs;
__greg_t _mc_tlsbase;
__fpregset_t __fpregs;
} mcontext_t;
--- /usr/include/amd64/mcontext.h
(linked to machine/mcontext.h on NetBSD/amd64)
typedef struct {
__gregset_t __gregs;
__fpregset_t __fpregs;
__greg_t _mc_tlsbase;
} mcontext_t;
--- /usr/include/i386/mcontext.h
(linked to machine/mcontext.h on NetBSD/i386)
Kamil Rytarowski [Tue, 2 Feb 2016 02:13:02 +0000 (03:13 +0100)]
Prefer PAL_PTRACE() over hardcoded FreeBSD-style ptrace(2) calls
Jan Kotas [Tue, 2 Feb 2016 01:20:28 +0000 (17:20 -0800)]
Merge pull request #2953 from janvorli/fix-unix-readytorun
Fix ReadyToRun on Unix
Kamil Rytarowski [Tue, 2 Feb 2016 01:18:39 +0000 (02:18 +0100)]
Fix build on NetBSD: Don't increment iterator twice in for(;;)
If I'm reading it correctly, we will never catch the ".cormeta" value.
Kamil Rytarowski [Tue, 2 Feb 2016 01:10:43 +0000 (02:10 +0100)]
Add NetBSD target in src/pal/src/CMakeLists.txt
Kamil Rytarowski [Tue, 2 Feb 2016 01:05:02 +0000 (02:05 +0100)]
Sort platforms alphabetically in src/pal/src/CMakeLists.txt
Jan Kotas [Tue, 2 Feb 2016 00:56:33 +0000 (16:56 -0800)]
Merge pull request #2962 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Tue, 2 Feb 2016 00:43:48 +0000 (16:43 -0800)]
Merge pull request #2958 from jkotas/arm-fixes
Fix build breaks in Linux ARM build
Lubomir Litchev [Tue, 26 Jan 2016 06:23:31 +0000 (22:23 -0800)]
Fix for bugs related to clasifying System.TypedReference.
It was a long standing assumption in the Jit that a field of a struct can
never be of ByRef type. It turns out this assumption is not entirely
holding.
The System.TypedReference is a very special type that is a struct, defined
to have two IntPtr fields. When the VM instantiates this type it changes
the type of the first field to ByRef.
This change closes a GC hole in the passing this struct by value on the
stack. It adds support to the classification algorithm for ByRef
references. It also uses the tree types for generating the code that
places struct field on the stack by value for passin to a callee.
The handling of GT_RETURN in the codegenxarch.cpp has been extracted as a
separate routine - genReturn. In case of struct return (multi-register
struct return or an implicit retBuf return, it delegates to the
genStructReturn method. This is a refactoring as well as making
sure that GT_RETFILT is handled properly - the return type of it is always
bool or void for the last statement of a finally block.
More feedback addressed.
Sivarv [Tue, 2 Feb 2016 00:19:10 +0000 (16:19 -0800)]
Merge pull request #2930 from sivarv/retfix
Fix to issue #2700
Brian Sullivan [Mon, 1 Feb 2016 22:48:53 +0000 (14:48 -0800)]
Merge pull request #2960 from briansull/issue_2925
Remove assert NYI: "Varargs method"
Rahul Kumar [Mon, 1 Feb 2016 21:51:15 +0000 (13:51 -0800)]
Update buildtools version for test builds
Jan Kotas [Mon, 1 Feb 2016 19:02:31 +0000 (11:02 -0800)]
Fix build breaks in Linux ARM build
- Delete redundant WAITORTIMERCALLBACK declarations. These redundant declarations were needed for very old versions of Windows SDK that are no longer supported.
- Remove unnecessary __cdecl modifiers
- Add default case to switch statement
Jan Kotas [Mon, 1 Feb 2016 21:41:03 +0000 (13:41 -0800)]
Fix Unix build breaks
[tfs-changeset:
1571015]
Brian Sullivan [Mon, 1 Feb 2016 21:39:13 +0000 (13:39 -0800)]
Remove assert NYI: "Varargs method"
Of the 27 test cases that hit this assert 22 of them are passing after this change
The remaining test failures are:
arglist.exe_2994
arglist.exe_2971
arglist.exe_2983
arglist.exe_3006
b16423.exe_4877
Jan Vorlicek [Mon, 1 Feb 2016 16:15:37 +0000 (17:15 +0100)]
Fix ReadyToRun on Unix
While making the ready to run tests run on Unix, I have discovered that the feature
doesn't really work on Unix. First, I have found that the test was generating the
native images into the NI subfolder, but the corerun on Unix doesn't use this
notation and expects these images to live side by side with the IL executables.
So, the test to verify that an image cannot be loaded multiple times was failing,
since the main exe loaded the IL test.dll instead of the native one and so explicit
load of the native test.dll wasn't considered a secondary load of the same image.
After fixing the test, I have found that attempt to load a ready to run image is
failing with an assert.
There were these issues:
- the loaded native image was not marked as relocated
- the EPILOG_WITH_TRANSITION_BLOCK_RETURN macro was missing popping argument registers
- One of the asserts and one getter didn't take into account the fact that the ready to
run native image is not considered to have native header.
- The assembler helpers DelayLoad_Helper and DelayLoad_MethodCall were passing a hex
number as a parameter to the PROLOG_WITH_TRANSITION_BLOCK, but it was using the "h"
suffix notation. There is a known issue in the clang assembler which causes such
suffix to be swallowed so the macro was getting just "10" instead of "10h". The fix
was to use 0x prefix instead.
This change fixes the problem. The ready to run tests pass with it correctly.
Chris McKinsey [Mon, 1 Feb 2016 19:35:32 +0000 (11:35 -0800)]
Add 15 more Benchstone floating-point (BenchF) benchmarks in Xunit format.
Update all BenchF sources with CodeFormatter tool.
dotnet-bot [Mon, 1 Feb 2016 18:48:17 +0000 (10:48 -0800)]
Fix OACR errors for ProjectK
[tfs-changeset:
1570939]
Jan Kotas [Mon, 1 Feb 2016 16:39:26 +0000 (08:39 -0800)]
Merge pull request #2951 from Dmitry-Me/dontAccessDeletedObject
Don't access deleted object, return proper error code
Dmitry-Me [Mon, 1 Feb 2016 10:40:05 +0000 (13:40 +0300)]
Don't access deleted object, return proper error code
Jan Kotas [Mon, 1 Feb 2016 09:59:42 +0000 (01:59 -0800)]
Merge pull request #2949 from Dmitry-Me/castToMostDerivedInterface
Fix cast to interface other than the most derived one
Jan Kotas [Mon, 1 Feb 2016 09:58:33 +0000 (01:58 -0800)]
Merge pull request #2950 from jkotas/WIN32
Stop defining WIN32 in Unix builds
Jan Kotas [Mon, 1 Feb 2016 07:42:27 +0000 (23:42 -0800)]
Stop defining WIN32 in Unix builds
WIN32 was defined for 32-bit Unix builds in number of places which is incorrect. It caused build break in lldb header since they use WIN32 define for Windows-specific code.
Dmitry-Me [Mon, 1 Feb 2016 07:06:35 +0000 (10:06 +0300)]
Fix cast to interface other than the most derived one
Jan Kotas [Mon, 1 Feb 2016 05:42:44 +0000 (21:42 -0800)]
Merge pull request #2948 from krytarowski/netbsd-support-22
Fix build on NetBSD, casting pointer to function to pointer to data
Jan Kotas [Mon, 1 Feb 2016 05:15:27 +0000 (21:15 -0800)]
Merge pull request #2933 from stephentoub/enum_parse
Improve performance of Enum.Parse/TryParse
Kamil Rytarowski [Mon, 1 Feb 2016 02:57:17 +0000 (03:57 +0100)]
Fix build on NetBSD, casting pointer to function to pointer to data
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/vm/method.cpp:5196:16: error: cannot initialize return object of type 'LPVOID' (aka 'void *') with an rvalue of type 'FARPROC' (aka 'long (*)()')
return GetProcAddress(hMod, (LPCSTR)(size_t)((UINT16)ordinal));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
stephentoub [Sat, 30 Jan 2016 19:43:54 +0000 (11:43 -0800)]
Improve performance of Enum.Parse/TryParse
The allocation profile of Enum.Parse today is fairly poor. While the design of the method returning an Enum requires at least one allocation for the boxed result (the generic TryParse could be overhauled to avoid this, but still has it), additional allocations shouldn't be necessary in the common cases. However, for some reason the current code is boxing a 0 on every call. It's also using string.Trim() to remove whitespace (once for the overall string and then once for each substring), and using String.Split to parse multiple values, which ends up allocating a string[] and an int[] even if there's only one value.
This commit removes all allocations from Enum.Parse other than the boxing of the Enum result and some allocations on the code path where Enum.Parse is handed a string containing a number, in which case additional allocations are involved in using the Convert.ChangeType call.
With an enum like:
```C#
[Flags]
enum Colors
{
Red = 0x1,
Orange = 0x2,
Yellow = 0x4,
Green = 0x8,
Blue = 0x10
}
```
using ```Enum.Parse(typeof(Color), "Red")``` repeatedly now results in 5x fewer gen0 GCs and is ~15% faster. Using ```Enum.Parse(typeof(Color), "Red, Orange, Yellow, Green, Blue")``` repeatedly now results in 23x fewer gen0 GCs is is similarly ~15% faster.
Jan Kotas [Mon, 1 Feb 2016 01:52:46 +0000 (17:52 -0800)]
Merge pull request #2940 from krytarowski/netbsd-support-18
NetBSD requires <stdarg.h> for variable argument lists in output.inl
Jan Kotas [Mon, 1 Feb 2016 01:52:25 +0000 (17:52 -0800)]
Merge pull request #2943 from krytarowski/netbsd-support-20
NetBSD doesn't ship with SI_KERNEL
Jan Kotas [Mon, 1 Feb 2016 01:49:16 +0000 (17:49 -0800)]
Merge pull request #2946 from krytarowski/netbsd-support-21
NetBSD: Disable check for minimal stack size for undefined PTHREAD_ST…
Kamil Rytarowski [Mon, 1 Feb 2016 00:10:41 +0000 (01:10 +0100)]
NetBSD: Disable check for minimal stack size for undefined PTHREAD_STACK_MIN
An alternative would be 'sysconf(_SC_THREAD_STACK_MIN)', but it might be no
good reason to prohibit single page stack size (PAGE_SIZE).
Jan Kotas [Sun, 31 Jan 2016 22:23:12 +0000 (14:23 -0800)]
Merge pull request #2520 from sperling/profiler
Enabling profiling on Unix/OS X
Kamil Rytarowski [Sun, 31 Jan 2016 10:17:48 +0000 (11:17 +0100)]
NetBSD requires <stdarg.h> for variable argument lists in output.inl
Kamil Rytarowski [Sun, 31 Jan 2016 19:23:08 +0000 (20:23 +0100)]
NetBSD doesn't ship with SI_KERNEL
SI_KERNEL is available in Linux and FreeBSD. It's unspecified what does it mean.
Linux:
#define SI_KERNEL 0x80 /* sent by the kernel from somewhere */
-- include/uapi/asm-generic/siginfo.h
FreeBSD:
SI_KERNEL signal generated by miscellaneous
parts of the kernel
-- siginfo(3)
Andreas Strid [Mon, 21 Dec 2015 14:33:18 +0000 (15:33 +0100)]
Enabling profiling on Unix/OS X.
Jan Kotas [Sun, 31 Jan 2016 15:31:07 +0000 (07:31 -0800)]
Merge pull request #2939 from krytarowski/netbsd-support-17
NetBSD doesn't ship with <machine/npx.h>.
Jan Kotas [Sun, 31 Jan 2016 15:30:24 +0000 (07:30 -0800)]
Merge pull request #2938 from krytarowski/netbsd-support-16
NetBSD defines _lwp_self(2) in <lwp.h>
Jan Kotas [Sun, 31 Jan 2016 15:22:30 +0000 (07:22 -0800)]
Merge pull request #2935 from jkotas/arm-fixes
Fix build breaks in Linux ARM port
Kamil Rytarowski [Sun, 31 Jan 2016 09:59:53 +0000 (10:59 +0100)]
NetBSD doesn't ship with <machine/npx.h>.
This is first step towards stopping to assume that HAVE_BSD_REGS_T implies
FreeBSD-style code. This breaks on NetBSD in several places.
Perhaps HAVE_BSD_REGS_T should be renamed to HAVE_FREEBSD_REGS_T.
Check headers with this fashion:
- FreeBSD requires <sys/types.h> for <machine/npx.h>
- FreeBSD requires <sys/cdefs.h> for <machine/reg.h>
- NetBSD doesn't need extra includes for <machine/reg.h>
- NetBSD requires <sys/param.h> before inclusion of <sys/cdefs.h>
Jan Kotas [Sun, 31 Jan 2016 01:33:29 +0000 (17:33 -0800)]
Introduce central location for turning FEATURE_EVENT_TRACE on/off
Turn FEATURE_EVENT_TRACE on for x64 Linux only. aarch64 and arm do not
have working lttng in their ubuntu/debian repos. We can expand to other
platforms in the future as they become supported.
Kamil Rytarowski [Sun, 31 Jan 2016 09:49:09 +0000 (10:49 +0100)]
NetBSD defines _lwp_self(2) in <lwp.h>
The _lwp_self(2) function prototype is missing in <sys/lwp.h>.
It's not sufficient to include <sys/lwp.h> or <lwp.h> -- as they are not
including one the other. We need to check for both headers and include them
both.
NAME
_lwp_self - get light-weight process identification
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <lwp.h>
lwpid_t
_lwp_self(void);
DESCRIPTION
_lwp_self() returns the LWP ID of the calling LWP.
Jan Kotas [Sun, 31 Jan 2016 04:54:03 +0000 (20:54 -0800)]
Cleanup top-level defines
- Delete left-over cruft from internal build
- Move Windows-specific defines under WIN32
Jan Kotas [Sun, 31 Jan 2016 05:33:12 +0000 (21:33 -0800)]
Merge pull request #2936 from dotnet/revert-2931-glob-revert
Revert "Revert "Add un-prefixed signatures as temporary workaround""
Jan Kotas [Sun, 31 Jan 2016 05:31:34 +0000 (21:31 -0800)]
Revert "Revert "Add un-prefixed signatures as temporary workaround""
Jan Kotas [Sun, 31 Jan 2016 01:40:53 +0000 (17:40 -0800)]
Add missing files for ARM legacy JIT
Jan Kotas [Sun, 31 Jan 2016 01:29:57 +0000 (17:29 -0800)]
Merge pull request #2934 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Sat, 30 Jan 2016 22:59:46 +0000 (14:59 -0800)]
Fix build break in internal build
[tfs-changeset:
1570568]
Jan Kotas [Sat, 30 Jan 2016 19:38:18 +0000 (11:38 -0800)]
Merge pull request #2931 from jkotas/glob-revert
Revert "Add un-prefixed signatures as temporary workaround"
Jan Kotas [Sat, 30 Jan 2016 16:12:16 +0000 (08:12 -0800)]
Merge pull request #2922 from rahku/updateBuildTools
update version of buildtools