summaryrefslogtreecommitdiff
path: root/config.json
diff options
context:
space:
mode:
authorDaniel Podder <dapodd@microsoft.com>2017-03-16 14:37:07 -0700
committerGitHub <noreply@github.com>2017-03-16 14:37:07 -0700
commit1b64c03493a4b7e4336f0dabbdf4ed980f0d109c (patch)
treea99ada676214fba3125a7f0cef2c90fe861317aa /config.json
parentf1087c7acbc4dc1bc4556af629a67ea606a96713 (diff)
downloadcoreclr-1b64c03493a4b7e4336f0dabbdf4ed980f0d109c.tar.gz
coreclr-1b64c03493a4b7e4336f0dabbdf4ed980f0d109c.tar.bz2
coreclr-1b64c03493a4b7e4336f0dabbdf4ed980f0d109c.zip
Add IBC support to managed build (#10180)
Add a new build switch, `ibcinstrument`, that adds `/Tuning` on the `crossgen` command line when building System.Private.CoreLib and its peers. Automatically consume IBC optdata during builds when these conditions are met: 1. `ibcinstrument` is *not* passed to the build, 2. optdata is available 3. ibcmerge is available Note that `optdata` will not yet be restored with this change; once packages for master are made available, a new package reference will still need to be added. This PR attempts to unblock manually testing IBC, as well as surrounding CI/infrastructure work. To help produce an IBC-optimized build using manually generated profile data, run the newly added `tests/scripts/optdata/bootstrap.py` script. It will configure the build to consume IBC data from a path automatically, and print out that path where profile data can be copied.
Diffstat (limited to 'config.json')
-rw-r--r--config.json32
1 files changed, 31 insertions, 1 deletions
diff --git a/config.json b/config.json
index 29924b3f19..03a705449d 100644
--- a/config.json
+++ b/config.json
@@ -186,6 +186,18 @@
"values": [ "debug", "release", "checked" ],
"defaultValue": "debug"
},
+ "EnableProfileGuidedOptimization": {
+ "description": "Enables IBC profile optimizations if profile data are available.",
+ "valueType": "property",
+ "values": [ true, false ],
+ "defaultValue": false
+ },
+ "OptimizationDataDir": {
+ "description": "Sets the path where the build should look for IBC profile data.",
+ "valueType": "property",
+ "values": [],
+ "defaultValue": ""
+ },
"UseEnv": {
"description": "Set when building for arm64.",
"valueType": "property",
@@ -342,6 +354,24 @@
"values": [],
"defaultValue": ""
},
+ "OptionalToolSource": {
+ "description": "URL of the nuget feed used by 'optional-tools'",
+ "valueType": "property",
+ "values": [],
+ "defaultValue": ""
+ },
+ "OptionalToolSourceUser": {
+ "description": "User name for authenticating to the optional tools feed",
+ "valueType": "property",
+ "values": [],
+ "defaultValue": ""
+ },
+ "OptionalToolSourcePassword": {
+ "description": "VSTS token for authenticating to the optional tools feed; requires 'package(READ)' permission",
+ "valueType": "property",
+ "values": [],
+ "defaultValue": ""
+ },
"ExtraParameters": {
"description": "Extra parameters will be passed to the selected command.",
"valueType": "passThrough",
@@ -629,4 +659,4 @@
"valueTypes": {}
}
}
-} \ No newline at end of file
+}