Carol Eidt [Tue, 6 Sep 2016 19:39:29 +0000 (12:39 -0700)]
Fix Arm64 build breaks
The `GT_STORE_OBJ` case in codegen was missing a break.
`getStructHandleIfPresent` wasn't correctly handling `GT_ASG'.
The `srcCount` was not being set correctly for block ops with a constant size.
And I lost some code in `fgMakeTmpArgNode` with a merge.
Also, I had introduced a dumping issue in gentree.cpp when I made `GT_OBJ` a `GTK_UNOP` as a result of some PR comments.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fedf90c774d63c0423858f2948cb63d2dcd9de3a
Hyung-Kyu Choi [Tue, 6 Sep 2016 17:13:31 +0000 (02:13 +0900)]
Move genIncRegBy() to codegenclassic.h (dotnet/coreclr#7063)
We don't have to keep genIncRegBy() in codegen.h anymore,
since genIncRegBy() is defined in codegenlegacy.cpp and only used in LEGACY_BACKEND code.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
527edfc09a2bd1060bd66fcce1fc99932a332645
Hanjoung Lee [Tue, 6 Sep 2016 16:42:03 +0000 (01:42 +0900)]
[ARM] Remove ARM_HAZARD_AVOIDANCE (dotnet/coreclr#7019)
remove `ARM_HAZARD_AVOIDANCE` as it is a rare case.
For dotnet/coreclr#7003
Commit migrated from https://github.com/dotnet/coreclr/commit/
b9402adedcf9cf5204fd9ece52183ac61cef7c83
Peter Kukol [Tue, 6 Sep 2016 16:21:13 +0000 (10:21 -0600)]
Enable FEATURE_JIT_METHOD_PERF always (even when FEATURE_CORECLR is on). (dotnet/coreclr#7028)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e70de80ef88f15cdc694ed773006854c1ed0b681
Sung-Jae Lee [Tue, 6 Sep 2016 15:45:33 +0000 (00:45 +0900)]
Add proper support for custom installed llvm tool chain. (dotnet/coreclr#7050)
* Add LLVM_HOME enviroment variable support
Commit migrated from https://github.com/dotnet/coreclr/commit/
cea91c3bced68cc36fcf2fbe167214f69940d3da
Hyeongseok Oh [Tue, 6 Sep 2016 15:43:39 +0000 (00:43 +0900)]
fix helpers' flag: ULDiv, ULMod can throw Div-by-zero exception (dotnet/coreclr#7052)
Commit migrated from https://github.com/dotnet/coreclr/commit/
237245c84f57d3dec091b9e10293eea4b2bd1a28
Ben Adams [Tue, 6 Sep 2016 14:23:37 +0000 (15:23 +0100)]
ArraySegment<T> exceptions to ThrowHelper (dotnet/coreclr#7058)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a90f60e90ef5d75b69d044ea91360f2b0437882e
Hyung-Kyu Choi [Tue, 6 Sep 2016 14:21:11 +0000 (23:21 +0900)]
Exclude two more tests for ARM (dotnet/coreclr#7062)
According to issue dotnet/coreclr#6217, following three tests fails
, because FEATURE_FASTTAILCALL is not supported in ARM.
JIT/Directed/tailcall/tailcall/tailcall.sh
JIT/Methodical/tailcall_v4/hijacking/hijacking.sh
JIT/Regression/JitBlue/devdiv_902271/DevDiv_902271/DevDiv_902271.sh
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc4444c02ceb7cceaee4fbbfd580fcc851a147f0
Tarek Mahmoud Sayed [Mon, 5 Sep 2016 19:13:23 +0000 (12:13 -0700)]
Allow mapping LCID and culture names mapping for neutral culture (dotnet/coreclr#7049)
This change is to pass the flag LOCALE_ALLOW_NEUTRAL_NAMES to the OS API to allow mapping
LCID to/from culture names.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0a3506ec958d920096e8f544d5b19100a5969e75
Ben Adams [Mon, 5 Sep 2016 03:34:28 +0000 (04:34 +0100)]
Improve ThrowHelper (dotnet/coreclr#7048)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5c32341eeef9b25919d63051a9f9fd92fc55ce6d
Carol Eidt [Sun, 4 Sep 2016 23:42:04 +0000 (16:42 -0700)]
Merge pull request dotnet/coreclr#7027 from CarolEidt/1stClassStructBlkOps
1st Class Struct Block Assignments
Commit migrated from https://github.com/dotnet/coreclr/commit/
ed9721c7be52ff867bcce2d26a85798382189a15
Rama krishnan Raghupathy [Sat, 3 Sep 2016 04:56:43 +0000 (21:56 -0700)]
Merge pull request dotnet/coreclr#7015 from ramarag/fixup_precode
Implement FixupPrecode for Arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
1a1735f19cb0bbda4f853343a57bc05f5dd6aa50
Rama Krishnan Raghupathy [Wed, 31 Aug 2016 23:55:28 +0000 (16:55 -0700)]
Implement FixupPrecode for Arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
1c5d30e757f3cf191b2f96d472bb022d4ce24f56
Carol Eidt [Fri, 2 Sep 2016 23:28:31 +0000 (16:28 -0700)]
More PR comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee0ea250a6bcfed1032d4ecc0ffd081f7a4467a1
Bruce Bowyer-Smyth [Fri, 2 Sep 2016 22:48:57 +0000 (08:48 +1000)]
Reduce item format allocations in AppendFormat (dotnet/coreclr#4702)
Commit migrated from https://github.com/dotnet/coreclr/commit/
db7a920b9d16008516ffc2eec7048c650dad9fb2
Rahul Kumar [Fri, 2 Sep 2016 21:00:58 +0000 (14:00 -0700)]
Merge pull request dotnet/coreclr#6976 from kvochko/prof_elt_callbacks
Enable FunctionEnter/FunctionLeave callbacks on ARM
Commit migrated from https://github.com/dotnet/coreclr/commit/
3dc7ec8d690f3ec209e36cf1da620093616512d6
Matt Mitchell [Fri, 2 Sep 2016 18:29:56 +0000 (11:29 -0700)]
Merge pull request dotnet/coreclr#7041 from mmitche/add-help-job
Add help job
Commit migrated from https://github.com/dotnet/coreclr/commit/
54ed5e051412c34a3bb9f087a35a032727028ca2
Matt Mitchell [Fri, 2 Sep 2016 18:11:18 +0000 (11:11 -0700)]
Add help job
Commit migrated from https://github.com/dotnet/coreclr/commit/
dc4a830d73e9b61168fc6cc81ad6aff42e657e0a
Carol Eidt [Fri, 2 Sep 2016 14:53:11 +0000 (07:53 -0700)]
Restore the change to gtNewBlkOpNode
Commit migrated from https://github.com/dotnet/coreclr/commit/
86b72d15a213ddc964efc84043e50ec90339ba9b
kchoi [Fri, 2 Sep 2016 11:00:41 +0000 (04:00 -0700)]
LTO build: fix perf regression from strict alias violation and incorrect inline assembly (dotnet/coreclr#7018)
Fix inline assembly implementation of getextcpuid() and strict aliasing violations in its callers
The implementation writes to the unsigned char result array, so
the clobber "memory" is needed.
As well its callers have strict aliasing violations from reading the
result array as a DWORD array. The fix is to memcpy the resulting
buffer onto the DWORD array.
Commit migrated from https://github.com/dotnet/coreclr/commit/
882a634da1fb2c6acc0b2414be43ceed28544fbf
Andrey Kvochko [Fri, 26 Aug 2016 16:57:51 +0000 (19:57 +0300)]
Enabled FunctionEnter/FunctionLeave hooks on ARM (dotnet/coreclr#6939)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d4c2486486bd884160f55797060fee6eed147281
Carol Eidt [Fri, 2 Sep 2016 04:27:46 +0000 (21:27 -0700)]
More PR Feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
e21aeafc31927708972ea301b2155f8313925f04
Bruce Bowyer-Smyth [Fri, 2 Sep 2016 01:25:53 +0000 (11:25 +1000)]
Improve StringBuilder ctor(), ctor(int), and ToString() performance. Consistent changes in other functions. (dotnet/coreclr#7029)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dc0bdc8d9ef0d63174435fa9ec6307d8ea30816e
Matt Mitchell [Thu, 1 Sep 2016 23:11:09 +0000 (16:11 -0700)]
Merge pull request dotnet/coreclr#7032 from mmitche/make-triggers-non-default
Changing new perf.groovy triggers to be non-default
Commit migrated from https://github.com/dotnet/coreclr/commit/
df0ff8e59f73ef503ccde1a98071450935d4c10d
Matt Mitchell [Thu, 1 Sep 2016 23:10:04 +0000 (16:10 -0700)]
Changing new perf.groovy triggers to be non-default
Commit migrated from https://github.com/dotnet/coreclr/commit/
c9c61a7d775852829f4b9db90755bbe828ab8a92
Carol Eidt [Thu, 1 Sep 2016 22:48:01 +0000 (15:48 -0700)]
Address PR Feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
f71493a5ad04ec2579052afcc606ee5e62f5a3b8
Jan Kotas [Thu, 1 Sep 2016 21:26:48 +0000 (14:26 -0700)]
Improve ToUpper/ToLower perf (dotnet/coreclr#7026)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ad7ae78d67ad3aab90d20df1177b914584a00514
Jose Manuel Heredia Hidalgo [Thu, 1 Sep 2016 21:24:22 +0000 (14:24 -0700)]
Make Lazy initialization of TextInfo::m_IsAsciiCasingSameAsInvariant thread safe (dotnet/coreclr#7021)
Replace bool? with Tristate enum to make it thread safe. Also use Tristate instead of TurkishCasing enum
Commit migrated from https://github.com/dotnet/coreclr/commit/
3b9140c30e647f7ff5b42b01031de43268258639
Michelle McDaniel [Thu, 1 Sep 2016 20:20:56 +0000 (13:20 -0700)]
Merge pull request dotnet/coreclr#6978 from adiaaida/fixFormat
Fix format.py
Commit migrated from https://github.com/dotnet/coreclr/commit/
fa8bf1c77196f5b8c7a61dd30e301139c4360eb2
Michelle McDaniel [Tue, 30 Aug 2016 16:52:13 +0000 (09:52 -0700)]
Fix format.py
In format.py, we were downloading bootstrap.sh/cmd to the current working
directory, but assuming that it was in coreclr/bootstrap, which is
incorrect. This change downloads it directly to coreclr/bootstrap, so that
we download and run to the same location.
This change also modifies where we install the newer version of dotnetcli
needed for jitutils to the coreclr/dotnetcli-jitutils directory. This
change is necessary because build.cmd->run.cmd->init-tools.cmd removes the
Tools directory, including our dotnetcli directory, so we don't want our
version of the cli to be trashed.
We also clean up our work at the end of the script by removing the
created jitutils and dotnetcli directories, and the bootstrap script.
Finally, this change adds some comments to tell the user what it's doing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4d51ced0cd78abb9439f31d6599600b33d7e8e0d
Carol Eidt [Thu, 21 Jul 2016 06:07:32 +0000 (23:07 -0700)]
1st Class Struct Block Assignments
Change block ops to assignments, with block nodes (GT_BLK, GT_OBJ and GT_DYN_BLK) as the lhs, and with GT_STORE_* in the backend.
For this initial change, existing behavior is preserved as much as possible, with a few differences in lea generation for SIMD types.
This causes pessimization in some areas; those, as well as the additional opportunities that can be enabled after this change, have all been marked TODO-1stClassStructs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cbaf04647bf4fddaeefb35af024b4d099ee4c25a
Jan Kotas [Thu, 1 Sep 2016 17:57:04 +0000 (10:57 -0700)]
Globalization update from CoreRT - part 2 (dotnet/coreclr#7020)
- Persian calendar date formatting
- Fix IsPrefix handling of empty strings
- Formatting changes
Commit migrated from https://github.com/dotnet/coreclr/commit/
bcd4c0c7ff141f854c1c3727f9a5cf45ea3efd43
Jan Kotas [Thu, 1 Sep 2016 17:56:37 +0000 (10:56 -0700)]
Merge pull request dotnet/coreclr#7025 from dotnet/revert-6994-replace_which_with_hash
Revert "Avoid using 'which' for verifying prereqs"
Commit migrated from https://github.com/dotnet/coreclr/commit/
6eee9ea10808549065ca5be4802f87e045ad9437
Jan Kotas [Thu, 1 Sep 2016 16:15:22 +0000 (09:15 -0700)]
Revert "Avoid using 'which' for verifying prereqs"
Commit migrated from https://github.com/dotnet/coreclr/commit/
a37ec7adfbf0832c08839751f1ce7bbe5de4de05
Pat Gavlin [Thu, 1 Sep 2016 16:11:26 +0000 (09:11 -0700)]
Merge pull request dotnet/coreclr#7024 from pgavlin/RunTestFix
Pass /p:Platform to msbuild in runtest.cmd.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5952512f68e10241ab1cc31d55dc91f42cf37ac2
Pat Gavlin [Thu, 1 Sep 2016 14:22:29 +0000 (07:22 -0700)]
Merge pull request dotnet/coreclr#7014 from pgavlin/TestBuildSpeedup
Stop groveling for project.json files when building every test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e076cc363efb14b368893e88c885e558aacfb147
Pat Gavlin [Thu, 1 Sep 2016 13:09:54 +0000 (06:09 -0700)]
Pass /p:Platform to msbuild in runtest.cmd.
Otherwise, the tests will use the ambient setting of the Platform
variable, which might not match the architecture specified on the
command line. This results in the wrong build of the tests running
against the correct runtime, which e.g. causes failures in tests
with native components.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d33c89d5af26e7131a069e9227491a1ad7bcae50
Swaroop Sridhar [Thu, 1 Sep 2016 04:15:56 +0000 (21:15 -0700)]
Merge pull request dotnet/coreclr#7013 from swaroop-sridhar/PtrStruct
GcInfo: Report Struct containing one GcPointer correctly
Commit migrated from https://github.com/dotnet/coreclr/commit/
68afd5c45f9d8175fcd3a8cb3a96097b7a546b80
Swaroop Sridhar [Wed, 31 Aug 2016 23:04:30 +0000 (16:04 -0700)]
GcInfo: Report Struct containing one GcPointer correctly
This change fixes a bug in the the GcInfo header,
where the ReturnKind is reported incorrectly for certain structs.
Structs that contain only one GCPointer or ByRef, can be returned
in a single register (Windows/Unix/OSX). The ReturnKind for these
struct-returns should be RT_Object/RT_ByRef, but they are currently
incorrectly reported as RT_Scalar. This change fixes the problem.
Fixes: dotnet/corefxdotnet/coreclr#11260
Commit migrated from https://github.com/dotnet/coreclr/commit/
060e0c660decc4a694765bd1133fe1e5a59536be
Aditya Mandaleeka [Thu, 1 Sep 2016 01:24:08 +0000 (18:24 -0700)]
Merge pull request dotnet/coreclr#6807 from lemmaa/add-options-for-arm-target-test
[Linux/ARM/Script] Add some features help for arm target test
Commit migrated from https://github.com/dotnet/coreclr/commit/
396180644851266f6be4777586d978110541afaa
Jan Kotas [Thu, 1 Sep 2016 00:21:40 +0000 (17:21 -0700)]
Update Unix System.Globalization implementation from CoreRT (dotnet/coreclr#7004)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dff1a185802abd109371f0317ce84d290c6675f6
Pat Gavlin [Wed, 31 Aug 2016 23:51:58 +0000 (16:51 -0700)]
Stop groveling for project.json files when building every test.
This information is only needed by build.proj. Do not compute it in dir.props,
which is included by every test project.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c810a1111db04086e31d981090b8ba647375bf77
Jan Kotas [Wed, 31 Aug 2016 22:24:46 +0000 (15:24 -0700)]
Merge pull request dotnet/coreclr#7010 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
8f441624783d5a2a6c17364c633c21f2eac65215
Eric Mellino [Wed, 31 Aug 2016 21:47:07 +0000 (14:47 -0700)]
Merge pull request dotnet/coreclr#6772 from mellinoe/fix-build-packages
Specify packages.builds by default in build-packages command
Commit migrated from https://github.com/dotnet/coreclr/commit/
a4e5efceace0e173b258cb9c8a54fce4292c10d4
Pat Gavlin [Wed, 31 Aug 2016 21:23:32 +0000 (14:23 -0700)]
Merge pull request dotnet/coreclr#6552 from pgavlin/RemovePreRationalizeLiveness
Do not run local var liveness before rationalize.
Commit migrated from https://github.com/dotnet/coreclr/commit/
001c5173e04a3cbb74179200756d14afb77aeb9f
Pat Gavlin [Wed, 31 Aug 2016 21:04:15 +0000 (14:04 -0700)]
Merge pull request dotnet/coreclr#5884 from mikedn/x86-addsub-long
Fix add/sub decomposition
Commit migrated from https://github.com/dotnet/coreclr/commit/
83276f74de6e9d0b0f3f21bbb361b0124421604c
Bruce Forstall [Wed, 31 Aug 2016 19:59:14 +0000 (12:59 -0700)]
Merge pull request dotnet/coreclr#7009 from BruceForstall/PrintErrorForFuncInfoFailure
Print an error, in DEBUG, if we fail to open the JitFuncInfoLogFile
Commit migrated from https://github.com/dotnet/coreclr/commit/
046b53d955505e697a25f28de5e557d273352b6f
Eric Mellino [Wed, 31 Aug 2016 19:36:37 +0000 (12:36 -0700)]
Merge pull request dotnet/coreclr#6943 from mellinoe/fedora-24
Add fedora24 native packages
Commit migrated from https://github.com/dotnet/coreclr/commit/
703bd92f2ed695b1323d03df36dcd8b39fb0a7b6
Mike McLaughlin [Wed, 31 Aug 2016 19:27:12 +0000 (12:27 -0700)]
Fix funceval of a function returning 16 byte value type. (dotnet/coreclr#6997)
On Linux and OS X, structs less or equal to 16 bytes (instead of 8 bytes
on Windows) are enregistered. Only 8 bytes is being passed back to
debugger during a funceval of a property or method that returns a 16
byte value type.
To fix this, the 16 byte return value (which is only used for enregistered
structures of that size on xplat) needed to be plumbed from CallTargetWorker
through the MethodDescCallSite macros to the func eval code.
The func eval code needed to also deal with 16 byte results.
NUMBER_RETURNVALUE_SLOTS is the number of ARG_SLOTs that will contain the
maximum enregistered return value.
CordbEval:m_result is now ARG_SLOT[NUMBER_RETURNVALUE_SLOTS].
CallTargetWorker is now passed a pointer and the count of bytes to/of the
return value buffer.
Minor fix to SOS SymbolReader function.
Commit migrated from https://github.com/dotnet/coreclr/commit/
97448547841a58e3b74459d35a48c2b7978d97bc
Aditya Mandaleeka [Wed, 31 Aug 2016 19:01:28 +0000 (12:01 -0700)]
Avoid using 'which' for verifying prereqs (dotnet/coreclr#6994)
* Use hash instead of which in build.sh
* Use hash instead of which in init-tools.sh.
* Use hash instead of which in gen-buildsys-clang.sh.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b73fad38425cd52008d830f7207f81873415e1a5
Pat Gavlin [Wed, 31 Aug 2016 17:56:11 +0000 (10:56 -0700)]
Fix dotnet/coreclr#6893. (dotnet/coreclr#6932)
Aggregate arguments to calls (i.e. arguments that are made up
of multiple, independent values such as those to be passed in
multiple registers) are represented by GT_LIST nodes that are
not distiguishable from normal GT_LIST nodes without the extra
context of the call. GT_LIST nodes, however, are disallowed in
LIR ranges. The intersection of these two design choices causes
problems for code that operates on LIR but wants to observe
aggregate arguments as a whole (rather than piecewise). In the
case of dotnet/coreclr#6893, this caused lowering to attempt to insert a
PUTARG_STK node after the GT_LIST node that represented the
aggregate argument that was being forced to the stack, which
caused an assertion in the LIR utilities to fail (the GT_LIST
node was passed as the insertion point to `LIR::Range::InsertAfter`,
which requires that the insertion point be a part of the given
range).
Conceptually, the fix is simple: the nodes that represent
aggregate arguments must be allowed to be part of LIR ranges.
The implementation, however, is complicated somewhat by the
need to distinguish the nodes used for aggregate arguments from
normal GT_LIST nodes. These changes implement a short-term
fix that distiguished these nodes by adding a node-specific flag,
`GTF_LIST_AGGREGATE`, to indicate that a GT_LIST node is in fact
an aggregate argument. In the long term, a more palatable
implementation would be the introduction of a new node and operator
type to represent aggregate arguments, but this is likely to
require broader changes to the compiler.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fd5a96d96fdcc4a1a439b211d15ceca3a110a1eb
Michelle McDaniel [Wed, 31 Aug 2016 17:45:08 +0000 (10:45 -0700)]
Merge pull request dotnet/coreclr#6989 from adiaaida/updateCodingConventions
Update coding conventions
Commit migrated from https://github.com/dotnet/coreclr/commit/
cc9b02413335a07c81f2155a89fb7487def29efe
Tarek Mahmoud Sayed [Wed, 31 Aug 2016 17:21:08 +0000 (10:21 -0700)]
Fix the build break
[tfs-changeset: 1625162]
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a3b66765e09f2946ae53895a90519530b3091bd
Pat Gavlin [Sun, 31 Jul 2016 17:02:51 +0000 (10:02 -0700)]
Do not run local var liveness before rationalize.
Neither rationalize nor lowering depend on liveness being run. The assertion mentioned
in the comment was caused by `fgExtendDbgLifetimes` inserting HIR nodes (GT_ASG nodes,
specifically) into LIR blocks.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9527331465a57e592d0f523d955fa950303db28
Bruce Forstall [Wed, 31 Aug 2016 16:38:54 +0000 (09:38 -0700)]
Print an error, in DEBUG, if we fail to open the JitFuncInfoLogFile
Commit migrated from https://github.com/dotnet/coreclr/commit/
0b3c925b909385add3e27665dd39ed20ff53181f
Bruce Forstall [Wed, 31 Aug 2016 16:50:00 +0000 (09:50 -0700)]
Merge pull request dotnet/coreclr#7001 from BruceForstall/CleanUpX86LegacyIssuesFile
Clean up test issues files
Commit migrated from https://github.com/dotnet/coreclr/commit/
15dbfa8ddd02892a7db411e3a15b7dd46d6f8fda
Bruce Forstall [Wed, 31 Aug 2016 05:18:14 +0000 (22:18 -0700)]
Clean up test issues files
Re-enable some tests that pass. Rearrange x86_legacy_backend_issues.targets
to more closely resemble issues.targets so it is easier to see the
difference.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2c09cb947176665885b900454f9b34082653ff9
Michelle McDaniel [Tue, 30 Aug 2016 20:41:27 +0000 (13:41 -0700)]
Update coding conventions
Add a note to the jit coding conventions that jit-format changes supersede
the conventions in the doc. Add a link to jit-format's documentation.
Commit migrated from https://github.com/dotnet/coreclr/commit/
66f4808f974fdfc029efc16d41b6a4c442f9257f
Michelle McDaniel [Wed, 31 Aug 2016 13:38:54 +0000 (06:38 -0700)]
Merge pull request dotnet/coreclr#6988 from adiaaida/shiftLong
Implement DecomposeShift
Commit migrated from https://github.com/dotnet/coreclr/commit/
767d9ae7ba8c7a7f013e5e0613d8b8415cfcf46d
Rama krishnan Raghupathy [Wed, 31 Aug 2016 05:18:57 +0000 (22:18 -0700)]
Merge pull request dotnet/coreclr#6917 from svick/fixing-alltestprojects
Fixed AllTestProjects.sln
Commit migrated from https://github.com/dotnet/coreclr/commit/
ed6045fc4914a712b69f3bc30749bf67de59607e
Sung-Jae Lee [Fri, 19 Aug 2016 08:05:07 +0000 (17:05 +0900)]
Add some features help for arm target test
* Add `--build-overlay-only` option to help building test package for arm target.
You can use this option on host after cross building, to make a
test package that will run on target device.
* Make `setup-runtime-dependencies.sh` called on `x64` architecture only.
Because dependent packages are not supported on other architectures now.
* Add `testsUnsupportedOnARM32.txt` file for list up test exclusions.
* minor style fix.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0e573776efe0a8791e579fba13cd65926d8dc5f3
Jan Kotas [Wed, 31 Aug 2016 04:54:44 +0000 (21:54 -0700)]
Update CoreClr, CoreFx, External to beta-24431-01, beta-24431-01, beta-24430-00, respectively (dotnet/coreclr#6879)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ce7fa974a35d610b7e18a93aba0003bc293a8614
Mike Danes [Wed, 13 Jul 2016 19:05:22 +0000 (22:05 +0300)]
Remove obsolete add/sub NYI
Commit migrated from https://github.com/dotnet/coreclr/commit/
7774463db2a76b08e4d5f88f42ec7ef2864855c6
Pat Gavlin [Wed, 31 Aug 2016 03:51:33 +0000 (20:51 -0700)]
Fix the srcCount for an unused GT_LONG. (dotnet/coreclr#6996)
GT_LONG nodes that do not have a corresponding use need to
consume their operands. There was already code in lowerxarch
that attempted to do so, but this code was no longer valid in
LIR.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bd78aa1c4f9ee45c27fa164acf5b742f2bdf4acc
Wes Haggard [Wed, 31 Aug 2016 03:15:23 +0000 (20:15 -0700)]
Remove System.Reflection.AssemblyNameProxy and fix System.Reflection.Pointer constructor (dotnet/coreclr#6987)
Commit migrated from https://github.com/dotnet/coreclr/commit/
20f1d0e9f209a5e111293423a2da23232f2de62d
dotnet-bot [Wed, 31 Aug 2016 02:30:14 +0000 (02:30 +0000)]
Update CoreClr, CoreFx, External to beta-24431-01, beta-24431-01, beta-24430-00, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
468ef6bbac9a2d7eff5691650d705d365985eeae
Michelle McDaniel [Tue, 30 Aug 2016 16:38:20 +0000 (09:38 -0700)]
Implement DecomposeShift
This change adds support for GT_LSH, GT_RSH, and GT_RSZ for x86 longs.
These nodes are implemented via helpers, so in decompose, we must remove
the shift node from the tree and replace it with a call to the helper.
Additionally, these helpers require that the long operand is in EAX:EDX,
so rather than adding a GT_LONG to the call arg list like we would
normally, we split the high and low parts of the arg and mark them as
non-standard args in gtMorphArgs to force the low part to be in EAX and
the high part to be in EDX. The shift amount is already defaulted to ECX,
which is where the helper expects it to be.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c06348f8f08356a081ab3713a6d749b7da2f79a9
sepidehMS [Wed, 31 Aug 2016 01:28:19 +0000 (18:28 -0700)]
Remove System.Reflection.AssemblyNameProxy and fix System.Reflection.Pointer constructor
Commit migrated from https://github.com/dotnet/coreclr/commit/
3cddcdd860488432ecb5d4aeb5481ee7cf6753f0
Tarek Mahmoud Sayed [Wed, 31 Aug 2016 01:17:09 +0000 (18:17 -0700)]
Merge pull request dotnet/coreclr#6993 from tarekgh/AddMissingSystemTextAPIs
Expose missing Global/Encoding APIs in coreclr and remove empty stubs
Commit migrated from https://github.com/dotnet/coreclr/commit/
26d05ed1a10d5568d39c4884c268bf2316936e85
Bruce Forstall [Wed, 31 Aug 2016 00:28:50 +0000 (17:28 -0700)]
Merge pull request dotnet/coreclr#6983 from BruceForstall/ReformatIssuesFiles
Reformat test issues files so they are more easily comparable
Commit migrated from https://github.com/dotnet/coreclr/commit/
26e0ad8f9931cc92c84a84fa50f894ac4f947518
Pat Gavlin [Tue, 30 Aug 2016 23:53:40 +0000 (16:53 -0700)]
Fix the srcCount for an unused GT_LONG.
GT_LONG nodes that do not have a corresponding use need to
consume their operands. There was already code in lowerxarch
that attempted to do so, but this code was no longer valid in
LIR.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6dd8f10aa73f098dedb4ccf58d145a9a55665495
James Ko [Tue, 30 Aug 2016 22:53:10 +0000 (18:53 -0400)]
Port String reorganization from CoreRT (dotnet/coreclr#6985)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e2696b5522d8dd941e3ce151b85c495ab25bf19
Jan Kotas [Tue, 30 Aug 2016 22:47:34 +0000 (15:47 -0700)]
GC update from CoreRT (dotnet/coreclr#6984)
https://github.com/dotnet/corert/tree/master/src/Native/gc dotnet/coreclr@
97dd6d2cbb50901cc3651f41a53a4ff9a1052391
Commit migrated from https://github.com/dotnet/coreclr/commit/
31ed0102e4421f1b3fe004960c763a4540f241ae
Evgeniy Devyatkin [Tue, 30 Aug 2016 22:47:21 +0000 (02:47 +0400)]
Skipped letter in a word (dotnet/coreclr#6991)
Commit migrated from https://github.com/dotnet/coreclr/commit/
76b982208f61b0691a48d3903ac7afcb10a1cce3
Tarek Mahmoud Sayed [Tue, 30 Aug 2016 22:46:50 +0000 (15:46 -0700)]
Expose missing Global/Encoding APIs in coreclr and remove empty stubs
This change is to expose all missing globalization and Encoding APIs in corelib
to have the complete exposed list for such namespaces.
Also we are removing the empty methods stubs for Windows implementation
And have the actual implementation in-place
Commit migrated from https://github.com/dotnet/coreclr/commit/
a4c2d83f439caa7d9a79f4cbc692dc8c8a89f41e
smile21prc [Tue, 30 Aug 2016 21:28:38 +0000 (14:28 -0700)]
Merge pull request dotnet/coreclr#6990 from smile21prc/coreclr-perf
Create coreclr perf jobs for Linux.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cda9b0fc9a5f206b391b1bd104e43bd6c29aad7f
Smile Wei [Tue, 30 Aug 2016 19:31:25 +0000 (12:31 -0700)]
Create coreclr perf jobs for Linux.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cb24fe3c2ac3670f3367fe4e934a35bbf6d2cca2
Jan Kotas [Tue, 30 Aug 2016 21:18:05 +0000 (14:18 -0700)]
Merge pull request dotnet/coreclr#6986 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
981ebfbb75ae51c040a88e637250cee079102f6d
Bruce Forstall [Tue, 30 Aug 2016 16:16:22 +0000 (09:16 -0700)]
Reformat test issues files so they are more easily comparable
This change reformats the issues files, and sorts the excluded tests
by name, so it is possible to easily compare the baseline issues.targets
file against the x86_jit32_issues.targets and x86_legacy_backend_issues.targets
files.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e8b6960c2d0e6581da960f2118e2cebdfd244ed
Jan Kotas [Tue, 30 Aug 2016 18:21:59 +0000 (11:21 -0700)]
Delete non-existing method
[tfs-changeset: 1624957]
Commit migrated from https://github.com/dotnet/coreclr/commit/
987559e7c8802201b71b441da6fc7e4165eea700
Bruce Forstall [Tue, 30 Aug 2016 18:17:41 +0000 (11:17 -0700)]
Merge pull request dotnet/coreclr#6973 from BruceForstall/MoveTailcallTestExclusion
Move TailcallVerifyWithPrefix test to "baseline x86" exclusion section
Commit migrated from https://github.com/dotnet/coreclr/commit/
776e55d17a871e9d11878ede35b50d60d257142a
Rahul Kumar [Tue, 30 Aug 2016 18:11:43 +0000 (11:11 -0700)]
Merge pull request dotnet/coreclr#6867 from rahku/returnHijack
Enable return address hijacking for arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
b008e0aa17dd79ce874346bb30d84b8a9e42dae5
smile21prc [Tue, 30 Aug 2016 17:59:12 +0000 (10:59 -0700)]
Merge pull request dotnet/coreclr#6980 from smile21prc/coreclr-perf
More fixes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
933c857ed6091d55a32fe5f09463ce8b4d058f06
Smile Wei [Tue, 30 Aug 2016 17:58:34 +0000 (10:58 -0700)]
More fixes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5e9582f33b66222d3262e96df3423c0449e13cc9
smile21prc [Tue, 30 Aug 2016 17:58:02 +0000 (10:58 -0700)]
Merge pull request dotnet/coreclr#6979 from smile21prc/coreclr-perf
Fixed wrong env vars.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3ced297aec8b509cd88d31cf48c45b1d6ac5d8b5
Smile Wei [Tue, 30 Aug 2016 17:57:13 +0000 (10:57 -0700)]
Fixed wrong env vars.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d7c2f438af9867f8f6316a9c7b1181b5afabbba3
Bruce Forstall [Tue, 30 Aug 2016 00:03:51 +0000 (17:03 -0700)]
Move TailcallVerifyWithPrefix test to "baseline x86" exclusion section
This test fails for both legacy x86 JIT as well as RyuJIT. Make that more
clear by moving the exclusion to the "x86 baseline failures" section.
Commit migrated from https://github.com/dotnet/coreclr/commit/
85e31570adaf7c40ae30972b4ed0d0b81e29ada4
Bruce Forstall [Tue, 30 Aug 2016 15:42:10 +0000 (08:42 -0700)]
Merge pull request dotnet/coreclr#6970 from BruceForstall/EnableStringArrTest
Re-enable stringarr test
Commit migrated from https://github.com/dotnet/coreclr/commit/
62f28d6d7801ce4c691194950798130502a4b13b
Maoni Stephens [Tue, 30 Aug 2016 05:17:54 +0000 (22:17 -0700)]
Merge pull request dotnet/coreclr#6953 from Maoni0/alloc_bytes
added GC.GetAllocatedBytesForCurrentThread API
Commit migrated from https://github.com/dotnet/coreclr/commit/
a0468f118017140aa1d47a321e7dfb1870619295
Jonghyun Park [Tue, 30 Aug 2016 02:36:51 +0000 (11:36 +0900)]
Revises UMThunkStub unwindable in ARM/Linux (dotnet/coreclr#6788)
In ARM/Linux, UMThunkStub currently pushes r0-r3 and r12 without .pad,
which results in dotnet/coreclr#6787.
This commit revises the prolog and epilog of UMThunkStub to fix 6787.
(In addition, personality routine is addes as ARM64/AMD64 already does.)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4952b4da7e87f825e49907f36f78ceb5cc46e28
Ben Adams [Tue, 30 Aug 2016 02:23:53 +0000 (03:23 +0100)]
Monitor.TryEnter asm timeout != 0 before spin (dotnet/coreclr#6951)
* JIT_MonTryEnter_Slow timeout != 0 before spin
* JIT_MonTryEnter_InlineGetThread timeout != 0 before spin
Commit migrated from https://github.com/dotnet/coreclr/commit/
4f60a817e3ea408a176c74ec0f0ea5e9f151dd61
Maoni Stephens [Tue, 30 Aug 2016 01:19:05 +0000 (18:19 -0700)]
added GC.GetAllocatedBytesForCurrentThread API
Commit migrated from https://github.com/dotnet/coreclr/commit/
97dd6d2cbb50901cc3651f41a53a4ff9a1052391
smile21prc [Mon, 29 Aug 2016 23:50:36 +0000 (16:50 -0700)]
Merge pull request dotnet/coreclr#6972 from smile21prc/coreclr-perf
Change dir to make sure the right project.json is used.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c9df33dbec4f9054237ea84368e52f8d1e8cde7b
Smile Wei [Mon, 29 Aug 2016 23:50:05 +0000 (16:50 -0700)]
Change dir to make sure the right project.json is used.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5f92d1a1e77309fb63a84a589c750bc48e522d51
smile21prc [Mon, 29 Aug 2016 23:35:39 +0000 (16:35 -0700)]
Merge pull request dotnet/coreclr#6971 from smile21prc/coreclr-perf
Add debugging code to find where Microsoft.DotNet.xunit.performance.r…
Commit migrated from https://github.com/dotnet/coreclr/commit/
3b59d8db7ea638045eed9523229e0bd33d47a8ac
Smile Wei [Mon, 29 Aug 2016 23:34:59 +0000 (16:34 -0700)]
Add debugging code to find where Microsoft.DotNet.xunit.performance.runner.cli.dll is deployed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3ed1aa01488186436765d5719823b3566bc6130
Bruce Forstall [Mon, 29 Aug 2016 23:22:57 +0000 (16:22 -0700)]
Re-enable stringarr test
I can't get this to fail locally despite thousands of runs.
I fixed the test to detect failure when checking all indices, not
just when checking the last index of the first rank.
Fixes dotnet/coreclr#4844.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5aa92e84bd53bbe33be1a0ef3767ea4078bc8fd9
smile21prc [Mon, 29 Aug 2016 23:05:46 +0000 (16:05 -0700)]
Merge pull request dotnet/coreclr#6969 from smile21prc/coreclr-perf
Add steps to install xunit performance packages
Commit migrated from https://github.com/dotnet/coreclr/commit/
6f7e802ddda4abcb0380c58b45b1e0f1519725f3
Smile Wei [Mon, 29 Aug 2016 23:04:58 +0000 (16:04 -0700)]
Add steps to install xunit performance packages
Commit migrated from https://github.com/dotnet/coreclr/commit/
0ed1e5143d298f2e568c974b0b49d5e6990084b2
smile21prc [Mon, 29 Aug 2016 22:41:29 +0000 (15:41 -0700)]
Merge pull request dotnet/coreclr#6968 from smile21prc/coreclr-perf
Add debugging code.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3c9a6422c3184654f656826374b9a47710ee4966