Jan Kotas [Sat, 6 Feb 2016 15:45:09 +0000 (07:45 -0800)]
Merge pull request #3060 from dotnet-bot/from-tfs
Merge changes from TFS
Sejong Oh [Sat, 6 Feb 2016 10:59:01 +0000 (02:59 -0800)]
Merge pull request #3048 from sejongoh/add_unit_test_for_issue_2580
Add unit test for issue 2580
Sejong Oh [Fri, 5 Feb 2016 21:07:57 +0000 (13:07 -0800)]
Add unit test for issue 2580
- The test checks if code generation for ushort is correct.
Jan Kotas [Sat, 6 Feb 2016 08:10:40 +0000 (00:10 -0800)]
Delete mdil support from coreclr
[tfs-changeset: 1573006]
Jan Kotas [Sat, 6 Feb 2016 04:06:47 +0000 (20:06 -0800)]
Merge pull request #3056 from krytarowski/netbsd-support-34
Fix NetBSD build: Define virtual destructors when needed
Kamil Rytarowski [Sat, 6 Feb 2016 02:16:55 +0000 (03:16 +0100)]
Fix NetBSD build: Define virtual destructors when needed
This fixes the following error with recent Clang (3.9.0nb20160205):
In file included from /tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/synchmgr/synchcontrollers.cpp:20:
In file included from /tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/synchmgr/synchmanager.hpp:24:
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/include/pal/synchcache.hpp:146:13: error: destructor called on non-final 'CorUnix::CSynchWaitController' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor]
pobj->~T();
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/synchmgr/synchmanager.hpp:724:31: note: in instantiation of member function 'CorUnix::CSynchCache<CorUnix::CSynchWaitController>::Add' requested here
m_cacheWaitCtrlrs.Add(pthrCurrent, pCtrlr);
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/include/pal/synchcache.hpp:146:20: note: qualify call to silence this warning
pobj->~T();
^
CorUnix::CSynchWaitController::
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/include/pal/synchcache.hpp:146:13: error: destructor called on non-final 'CorUnix::CSynchStateController' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor]
pobj->~T();
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/synchmgr/synchmanager.hpp:741:32: note: in instantiation of member function 'CorUnix::CSynchCache<CorUnix::CSynchStateController>::Add' requested here
m_cacheStateCtrlrs.Add(pthrCurrent, pCtrlr);
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/include/pal/synchcache.hpp:146:20: note: qualify call to silence this warning
pobj->~T();
^
CorUnix::CSynchStateController::
2 errors generated.
Pat Gavlin [Sat, 6 Feb 2016 02:25:52 +0000 (18:25 -0800)]
Merge pull request #3044 from pgavlin/CoreRTPInvoke
Generate P/Invoke transitions for CoreRT.
Andy Ayers [Sat, 6 Feb 2016 02:08:23 +0000 (18:08 -0800)]
Merge pull request #3051 from AndyAyersMS/InlineRefactor2
Inliner refactoring: consolidate logging, reporting and dumping
Jan Kotas [Sat, 6 Feb 2016 01:33:52 +0000 (17:33 -0800)]
Merge pull request #3026 from Dmitry-Me/clarifyKeepAliveUsage1
No need to stick to end of method
Sivarv [Sat, 6 Feb 2016 00:38:49 +0000 (16:38 -0800)]
Merge pull request #3052 from sivarv/master
Fix to assert failure 'ret->OperGet() == GT_RETURN' morph.cpp
Jan Kotas [Sat, 6 Feb 2016 00:07:26 +0000 (16:07 -0800)]
Merge pull request #3053 from wtgodbe/serverGC
Disable usage of Server GC for ubuntu PR test builds in CI
Jan Kotas [Fri, 5 Feb 2016 23:59:25 +0000 (15:59 -0800)]
Merge pull request #3046 from adityamandaleeka/env_pal
Remove InternalStrdup from PAL
Andy Ayers [Thu, 4 Feb 2016 07:01:42 +0000 (23:01 -0800)]
Inliner refactoring: consolidate logging, reporting and dumping
With this change the responsibility for dumping, logging, and reporting
inline decisions is moved into the JitInlineResult class instead of being
distributed throughout the code base. This insures all the relevant inline
information is handled in a consistent manner.
The JitInlineResult is updated to hold a compiler instance and now
requires a context string describing the what the jit is doing as it evaluates
an inline candidate. There are 4 distinct contexts in use currently.
Pat Gavlin [Fri, 5 Feb 2016 22:42:31 +0000 (14:42 -0800)]
Fix a few more binary exprs for the CC.
sivarv [Fri, 5 Feb 2016 22:01:43 +0000 (14:01 -0800)]
Corrected typo in second comment line.
Pat Gavlin [Fri, 5 Feb 2016 22:38:34 +0000 (14:38 -0800)]
Address CR feedback.
William Godbe [Fri, 5 Feb 2016 22:09:47 +0000 (14:09 -0800)]
Disable usage of Server GC for ubuntu PR test builds in CI
Jan Kotas [Fri, 5 Feb 2016 21:12:48 +0000 (13:12 -0800)]
Merge pull request #3030 from krytarowski/netbsd-support-32
Fix build on NetBSD: Walkaround compiler strictness regarding const c…
Jan Kotas [Fri, 5 Feb 2016 21:10:07 +0000 (13:10 -0800)]
Merge pull request #3045 from benpye/allow-llvm-unwind
Detect libunwind features allowing LLVMs libunwind to be used
Jan Kotas [Fri, 5 Feb 2016 21:09:39 +0000 (13:09 -0800)]
Merge pull request #2995 from krytarowski/netbsd-support-29
Fix build on NetBSD: Mark destructors of few classes as virtual
Aditya Mandaleeka [Fri, 5 Feb 2016 20:05:21 +0000 (12:05 -0800)]
Remove InternalStrdup
Jan Vorlicek [Fri, 5 Feb 2016 19:46:48 +0000 (20:46 +0100)]
Merge pull request #3033 from janvorli/test-checked-optimization
Fix checked build compiler options
Matt Ellis [Fri, 5 Feb 2016 19:29:04 +0000 (11:29 -0800)]
Merge pull request #3042 from ellismg/add-pal-tests-to-skiptests-directive
Have `skiptests` control PAL tests as well
Sejong Oh [Fri, 5 Feb 2016 19:07:25 +0000 (11:07 -0800)]
Merge pull request #3000 from sejongoh/add_windows_corefx_test_with_jit_stress_modes
Add corefx testing with JitStress=1 on Windows
Ben Pye [Fri, 5 Feb 2016 16:34:36 +0000 (16:34 +0000)]
Detect libunwind features allowing LLVMs libunwind to be used
Pat Gavlin [Wed, 20 Jan 2016 21:44:43 +0000 (13:44 -0800)]
Generate P/Invoke transitions for CoreRT.
This change adds support for CoreRT-style P/Invoke transitions
to RyuJIT. Instead of the usual inlined transition code, these
transitions are made up of calls to two new JIT helpers:
PInvokeTransitionFrame frame; // opaque local
CORINFO_HELP_INIT_PINVOKE_FRAME(&frame);
...
CORINFO_HELP_JIT_PINVOKE_BEGIN(&frame);
target(...);
CORINFO_HELP_JIT_PINVOKE_END(&frame);
...
The preemptive mode constraints apply between calls to
JIT_PINVOKE_BEGIN and JIT_PINVOKE_END: no managed references
may be live only in registers and managed references may not
be manipulated.
Jan Kotas [Fri, 5 Feb 2016 07:23:30 +0000 (23:23 -0800)]
Merge pull request #3010 from AndyAyersMS/FixVersionIssue
Fix version issue with System.IO for serialization tests
Jan Kotas [Fri, 5 Feb 2016 07:21:37 +0000 (23:21 -0800)]
Merge pull request #3027 from stephentoub/remove_security_checks
Remove useless security checks
Jan Kotas [Fri, 5 Feb 2016 07:20:00 +0000 (23:20 -0800)]
Merge pull request #3039 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Kotas [Fri, 5 Feb 2016 07:19:00 +0000 (23:19 -0800)]
Merge pull request #3041 from krytarowski/netbsd-support-33
Fix NetBSD build: Retire unneeded PAL_fpos_t and fgetpos() fsetpos()
Matt Ellis [Fri, 5 Feb 2016 06:33:14 +0000 (22:33 -0800)]
Have `skiptests` control PAL tests as well
Don't build the PAL test projects when `skiptests` is passed to
build.sh.
Gaurav Khanna [Fri, 5 Feb 2016 04:41:45 +0000 (20:41 -0800)]
Merge pull request #3031 from gkhanna79/FixBatch
Cleanup VS2013 reference
Andy Ayers [Fri, 5 Feb 2016 04:28:25 +0000 (20:28 -0800)]
Merge pull request #3038 from AndyAyersMS/FixInlineAssert
Remove assert from the JitInlineResult dtor
Kamil Rytarowski [Fri, 5 Feb 2016 03:34:06 +0000 (04:34 +0100)]
Fix NetBSD build: Retire unneeded PAL_fpos_t and fgetpos() fsetpos()
These functions are unused. Linux version was unimplemented.
Removal suggested by Jan Kotas (Microsoft) to get rid of these functions.
The current code resulted with the following errors with the recent Clang/LLVM
(3.9.0nb20160131 snapshot) on NetBSD-7.99.25:
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/cruntime/file.cpp:858:20: error: no viable overloaded '='
native_pos = *pos;
~~~~~~~~~~ ^ ~~~~
/usr/include/stdio.h:67:16: note: candidate function (the implicit copy assignment operator) not viable: no known conversion from 'PAL_fpos_t' (aka 'unsigned long') to 'const __sfpos' for 1st argument
typedef struct __sfpos {
^
/usr/include/stdio.h:67:16: note: candidate function (the implicit move assignment operator) not viable: no known conversion from 'PAL_fpos_t' (aka 'unsigned long') to '__sfpos' for 1st argument
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/cruntime/file.cpp:860:14: error: assigning to 'PAL_fpos_t' (aka 'unsigned long') from incompatible type 'fpos_t' (aka '__sfpos')
*pos = native_pos;
^ ~~~~~~~~~~
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/src/cruntime/file.cpp:904:20: error: no viable overloaded '='
native_pos = *pos;
~~~~~~~~~~ ^ ~~~~
/usr/include/stdio.h:67:16: note: candidate function (the implicit copy assignment operator) not viable: no known conversion from 'const PAL_fpos_t' (aka 'const unsigned long') to 'const __sfpos' for 1st argument
typedef struct __sfpos {
^
/usr/include/stdio.h:67:16: note: candidate function (the implicit move assignment operator) not viable: no known conversion from 'const PAL_fpos_t' (aka 'const unsigned long') to '__sfpos' for 1st argument
3 errors generated.
Possible implementation for NetBSD (attached here for historical references):
+--- src/pal/src/cruntime/file.cpp.orig 2016-01-28 19:04:13.
000000000 +0000
++++ src/pal/src/cruntime/file.cpp
+@@ -844,6 +844,15 @@ PAL_fgetpos (
+ // TODO: implement for Linux if required
+ ASSERT(FALSE);
+ return -1;
++#elif defined(__NetBSD__)
++ off_t native_pos;
++
++ if ((native_pos = ftello(f->bsdFilePtr)) == -1)
++ return -1;
++
++ *pos = native_pos;
++
++ return 0;
+ #else
+ int nRetVal = -1;
+ fpos_t native_pos;
+@@ -890,6 +899,14 @@ PAL_fsetpos (
+ // TODO: implement for Linux if required
+ ASSERT(FALSE);
+ return -1;
++#elif defined(__NetBSD__)
++ off_t native_pos;
++
++ native_pos = *pos;
++ if (fseeko(f->bsdFilePtr, native_pos, SEEK_SET) == -1)
++ return -1;
++
++ return 0;
+ #else
+ int nRetVal = -1;
+ fpos_t native_pos;
We cannot go better on NetBSD. This implementation might still have issues
with e.g. Unicode.
This closes #3029 "PAL fpos_t clash with NetBSD libraries"
Thanks Peter Jas (@jasonwilliams200OK) for hacking session on it.
Pat Gavlin [Fri, 5 Feb 2016 01:57:33 +0000 (17:57 -0800)]
Make a few JIT interface changes to accommodate CoreRT:
- Add support for providing extended flags for a compile invocation. In order to preserve binary compatibility with older definitions of ICorJitCompiler, this involved adding a new method to ICJI to fetch the flags. This method is only called if no flags are provided to the compiler via compileMethod.
- Add helper definitions for CORINFO_HELP_PINVOKE_{BEGIN,END} for CoreRT
- Add a flag to CorJitFlag2 to indicate that the aforementioned heleprs should be used instead of generating inline transitions
- Add a new method, getAddressOfPInvokeTarget, to the JIT/EE interface. This method can return a direct target for a PInvoke call in addition to an indirect or double-indirect target.
[tfs-changeset: 1572442]
Jan Vorlicek [Thu, 4 Feb 2016 21:20:24 +0000 (22:20 +0100)]
Fix checked build optimization
The initialization of the checked build compiler flags in the compiler
override files had no effect, since cmake handles the _INIT variables
only for the four standard configurations.
Wes Haggard [Fri, 5 Feb 2016 00:56:27 +0000 (16:56 -0800)]
Merge pull request #3036 from weshaggard/RemoveTestDependencyFeed
Remove dotnet-coreclr-testDependencies feed
Sejong Oh [Wed, 3 Feb 2016 06:17:26 +0000 (22:17 -0800)]
Add corefx testing with JIT stress modes on Windows
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.
Wes Haggard [Thu, 4 Feb 2016 22:10:44 +0000 (14:10 -0800)]
Remove dotnet-coreclr-testDependencies feed
As part of our feed migration this feed was deleted and so restore
started failing. It only contained one package so I that package on
our dotnet-core feed and eliminated the need for this one extra feed.
Gaurav Khanna [Thu, 4 Feb 2016 19:18:12 +0000 (11:18 -0800)]
Cleanup VS2013 reference
Kamil Rytarowski [Thu, 4 Feb 2016 19:07:04 +0000 (20:07 +0100)]
Fix build on NetBSD: Walkaround compiler strictness regarding const conversion
This commit walks-around over-cautious Clang/LLVM alerts like:
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/pal/tests/palsuite/c_runtime/sscanf/test4/test4.c:32:33: error: implicit conversion from
'int' to 'short' changes value from 65535 to -1 [-Werror,-Wconstant-conversion]
DoShortNumTest("-1", "%hd", 65535);
^~~~~~~~~~~~~~~~~~~
This closes #2968 "implicit conversion from 'int' to 'short' changes value from 65535 to -1"
Thanks Jan Kotas (Microsoft) for pointers.
Vance Morrison [Sat, 23 Jan 2016 00:34:37 +0000 (16:34 -0800)]
Remove security checks.
These are holdovers from Silverlight days. We don't support code access security in coreclr.
Dmitry-Me [Thu, 4 Feb 2016 14:33:59 +0000 (17:33 +0300)]
No need to stick to end of method
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
Andy Ayers [Wed, 3 Feb 2016 21:46:03 +0000 (13:46 -0800)]
Fix version issue with System.IO for serialization tests
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
Kamil Rytarowski [Wed, 3 Feb 2016 01:51:08 +0000 (02:51 +0100)]
Fix build on NetBSD: Mark destructors of few classes as virtual
In the DeleteInteropSafe function there is accepted a class type (template):
template<class T> void DeleteInteropSafe(T *p)
Inside this function there is a call of a destructor:
p->~T();
Recent Clang/LLVM is upset when the passed T class doesn't contain a virtual
destructor.
Example error message:
In file included from /tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/debug/ee/debugger.cpp:13:
In file included from /tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/debug/ee/stdafx.h:33:
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/debug/ee/debugger.h:3652:9: error: destructor called on non-final 'DebuggerPendingFuncEvalTable' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor]
p->~T();
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/debug/ee/debugger.cpp:1310:13: note: in instantiation of function template specialization 'DeleteInteropSafe<DebuggerPendingFuncEvalTable>' requested here
DeleteInteropSafe(pPendingEvals);
^
/tmp/pkgsrc-tmp/wip/coreclr-git/work/coreclr/src/debug/ee/debugger.h:3652:13: note: qualify call to silence this warning
p->~T();
^
DebuggerPendingFuncEvalTable::
Reported and fixed on:
$ uname -a
NetBSD chieftec 7.99.25 NetBSD 7.99.25 (GENERIC) #0: Fri Dec 25 20:51:06 UTC 2015 root@chieftec:/tmp/netbsd-tmp/sys/arch/amd64/compile/GENERIC amd64
$ clang --version
clang version 3.9.0
Target: x86_64-unknown-netbsd7.99.25
Thread model: posix
InstalledDir: /usr/pkg/bin
$ llvm-config --version
3.9.0svn
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