Skip to content

Commit

Permalink
Add -optimise as a separate matrix test
Browse files Browse the repository at this point in the history
Bootstrap with -optimise is almost twice slower, until that's improved it's probably best to bootstrap without.
  • Loading branch information
OlivierBlanvillain committed Jun 15, 2017
1 parent 8ddfcaf commit 99f73b9
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 5 deletions.
6 changes: 4 additions & 2 deletions .drone.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# After updating this file, you need to re-sign it:
#
# - Install [drone-cli](http://readme.drone.io/usage/getting-started-cli/)
# - Copy your token from http://dotty-ci.epfl.ch/account (Click SHOW TOKEN)
# - (export DRONE_TOKEN=your-token; export DRONE_SERVER=http://dotty-ci.epfl.ch; drone sign lampepfl/dotty)
# - Copy your token from http://dotty-ci.epfl.ch/account (Click SHOW TOKEN)
# - DRONE_TOKEN=your-token DRONE_SERVER=http://dotty-ci.epfl.ch drone sign lampepfl/dotty
#
# Please note that the signing can only be done by collaborators.

Expand Down Expand Up @@ -76,3 +76,5 @@ matrix:
CI_PUBLISH: false
- CI_TEST: dotty-bootstrapped/test
CI_PUBLISH: false
- CI_TEST: ;set bootstrapOptimised in ThisBuild := true ;dotty-bootstrapped/test
CI_PUBLISH: false
2 changes: 1 addition & 1 deletion .drone.yml.sig
Original file line number Diff line number Diff line change
@@ -1 +1 @@
eyJhbGciOiJIUzI1NiJ9.IyBBZnRlciB1cGRhdGluZyB0aGlzIGZpbGUsIHlvdSBuZWVkIHRvIHJlLXNpZ24gaXQ6CiMKIyAtIEluc3RhbGwgW2Ryb25lLWNsaV0oaHR0cDovL3JlYWRtZS5kcm9uZS5pby91c2FnZS9nZXR0aW5nLXN0YXJ0ZWQtY2xpLykKIyAtIENvcHkgeW91ciB0b2tlbiBmcm9tICBodHRwOi8vZG90dHktY2kuZXBmbC5jaC9hY2NvdW50IChDbGljayBTSE9XIFRPS0VOKQojIC0gKGV4cG9ydCBEUk9ORV9UT0tFTj15b3VyLXRva2VuOyBleHBvcnQgRFJPTkVfU0VSVkVSPWh0dHA6Ly9kb3R0eS1jaS5lcGZsLmNoOyBkcm9uZSBzaWduIGxhbXBlcGZsL2RvdHR5KQojCiMgUGxlYXNlIG5vdGUgdGhhdCB0aGUgc2lnbmluZyBjYW4gb25seSBiZSBkb25lIGJ5IGNvbGxhYm9yYXRvcnMuCgpwaXBlbGluZToKICB0ZXN0OgogICAgaW1hZ2U6IGxhbXBlcGZsL2RvdHR5OjA3LTA2LTIwMTcKICAgIHB1bGw6IHRydWUKICAgIGNvbW1hbmRzOgogICAgICAtIC4vcHJvamVjdC9zY3JpcHRzL3NidCAiJHtDSV9URVNUfSIKICAgIHdoZW46CiAgICAgIGJyYW5jaDoKICAgICAgICBleGNsdWRlOiBnaC1wYWdlcwoKICBwdWJsaXNoX25pZ2h0bHk6CiAgICBpbWFnZTogbGFtcGVwZmwvZG90dHk6MDctMDYtMjAxNwogICAgcHVsbDogdHJ1ZQogICAgY29tbWFuZHM6CiAgICAgIC0gLi9wcm9qZWN0L3NjcmlwdHMvc2J0ICI7Y2xlYW4gO3B1Ymxpc2hMb2NhbCIgIiR7Q0lfUFVCTElTSH0iCiAgICAgIC0gLi9wcm9qZWN0L3NjcmlwdHMvc2J0ICJzYnQtZG90dHkvc2NyaXB0ZWQgc291cmNlLWRlcGVuZGVuY2llcy8qIiAiJHtDSV9QVUJMSVNIfSIKICAgICAgLSBOSUdIVExZQlVJTEQ9InllcyIgLi9wcm9qZWN0L3NjcmlwdHMvc2J0UHVibGlzaCAke0NJX1BVQkxJU0h9ICRTT05BVFlQRV9VU0VSICRTT05BVFlQRV9QVyAkUEdQX1BXICI7ZG90dHktYm9vdHN0cmFwcGVkL3B1Ymxpc2hTaWduZWQgO3NvbmF0eXBlUmVsZWFzZSIKICAgIHZvbHVtZXM6CiAgICAgIC0gL2hvbWUvZHJvbmUva2V5czova2V5cwogICAgd2hlbjoKICAgICAgZXZlbnQ6IGRlcGxveW1lbnQKICAgICAgZW52aXJvbm1lbnQ6IG5pZ2h0bHkKCiAgcHVibGlzaF9yZWxlYXNlOgogICAgaW1hZ2U6IGxhbXBlcGZsL2RvdHR5OjA3LTA2LTIwMTcKICAgIHB1bGw6IHRydWUKICAgIGNvbW1hbmRzOgogICAgICAtIFJFTEVBU0VCVUlMRD0ieWVzIiAuL3Byb2plY3Qvc2NyaXB0cy9zYnRQdWJsaXNoICR7Q0lfUFVCTElTSH0gJFNPTkFUWVBFX1VTRVIgJFNPTkFUWVBFX1BXICRQR1BfUFcgIjtkb3R0eS1ib290c3RyYXBwZWQvcHVibGlzaFNpZ25lZCA7c29uYXR5cGVSZWxlYXNlIgogICAgdm9sdW1lczoKICAgICAgLSAvaG9tZS9kcm9uZS9rZXlzOi9rZXlzCiAgICB3aGVuOgogICAgICBldmVudDogZGVwbG95bWVudAogICAgICBlbnZpcm9ubWVudDogcmVsZWFzZQoKICBwdWJsaXNoX3NidF9yZWxlYXNlOgogICAgaW1hZ2U6IGxhbXBlcGZsL2RvdHR5OjA3LTA2LTIwMTcKICAgIHB1bGw6IHRydWUKICAgIGNvbW1hbmRzOgogICAgICAtIFJFTEVBU0VCVUlMRD0ieWVzIiAuL3Byb2plY3Qvc2NyaXB0cy9zYnRQdWJsaXNoICR7Q0lfUFVCTElTSH0gJFNPTkFUWVBFX1VTRVIgJFNPTkFUWVBFX1BXICRQR1BfUFcgIjtzYnQtZG90dHkvcHVibGlzaFNpZ25lZCA7c29uYXR5cGVSZWxlYXNlIgogICAgdm9sdW1lczoKICAgICAgLSAvaG9tZS9kcm9uZS9rZXlzOi9rZXlzCiAgICB3aGVuOgogICAgICBldmVudDogZGVwbG95bWVudAogICAgICBlbnZpcm9ubWVudDogc2J0X3JlbGVhc2UKCiAgZG9jdW1lbnRhdGlvbjoKICAgIGltYWdlOiBsYW1wZXBmbC9kb3R0eTowNy0wNi0yMDE3CiAgICBwdWxsOiB0cnVlCiAgICBjb21tYW5kczoKICAgICAgLSAuL3Byb2plY3Qvc2NyaXB0cy9nZW5Eb2NzICIke0NJX1BVQkxJU0h9IiAkQk9UX1BBU1MKICAgIHdoZW46CiAgICAgIGJyYW5jaDogbWFzdGVyCgogIHNsYWNrOgogICAgaW1hZ2U6IHBsdWdpbnMvc2xhY2sKICAgIGNoYW5uZWw6IGRvdHR5CiAgICB3aGVuOgogICAgICBicmFuY2g6IG1hc3RlcgogICAgICBzdGF0dXM6IGNoYW5nZWQKCm1hdHJpeDoKICBpbmNsdWRlOgogICAgLSBDSV9URVNUOiBkb3R0eS1iaW4tdGVzdHMvdGVzdAogICAgICBDSV9QVUJMSVNIOiB0cnVlCiAgICAtIENJX1RFU1Q6IGxlZ2FjeVRlc3RzCiAgICAgIENJX1BVQkxJU0g6IGZhbHNlCiAgICAtIENJX1RFU1Q6IDt0ZXN0O3NidC1kb3R0eS9zY3JpcHRlZCBjb21waWxlclJlcG9ydGVyLyo7c2J0LWRvdHR5L3NjcmlwdGVkIGRpc2NvdmVyeS8qO3NidC1kb3R0eS9zY3JpcHRlZCBzYnQtZG90dHkvKgogICAgICBDSV9QVUJMSVNIOiBmYWxzZQogICAgLSBDSV9URVNUOiBkb3R0eS1ib290c3RyYXBwZWQvdGVzdAogICAgICBDSV9QVUJMSVNIOiBmYWxzZQo.REtW8iikLellOXP5ex7tY4WJFc4aIFHXTFsbPi0qkiA
eyJhbGciOiJIUzI1NiJ9.IyBBZnRlciB1cGRhdGluZyB0aGlzIGZpbGUsIHlvdSBuZWVkIHRvIHJlLXNpZ24gaXQ6CiMKIyAtIEluc3RhbGwgW2Ryb25lLWNsaV0oaHR0cDovL3JlYWRtZS5kcm9uZS5pby91c2FnZS9nZXR0aW5nLXN0YXJ0ZWQtY2xpLykKIyAtIENvcHkgeW91ciB0b2tlbiBmcm9tIGh0dHA6Ly9kb3R0eS1jaS5lcGZsLmNoL2FjY291bnQgKENsaWNrIFNIT1cgVE9LRU4pCiMgLSBEUk9ORV9UT0tFTj15b3VyLXRva2VuIERST05FX1NFUlZFUj1odHRwOi8vZG90dHktY2kuZXBmbC5jaCBkcm9uZSBzaWduIGxhbXBlcGZsL2RvdHR5CiMKIyBQbGVhc2Ugbm90ZSB0aGF0IHRoZSBzaWduaW5nIGNhbiBvbmx5IGJlIGRvbmUgYnkgY29sbGFib3JhdG9ycy4KCnBpcGVsaW5lOgogIHRlc3Q6CiAgICBpbWFnZTogbGFtcGVwZmwvZG90dHk6MDctMDYtMjAxNwogICAgcHVsbDogdHJ1ZQogICAgY29tbWFuZHM6CiAgICAgIC0gLi9wcm9qZWN0L3NjcmlwdHMvc2J0ICIke0NJX1RFU1R9IgogICAgd2hlbjoKICAgICAgYnJhbmNoOgogICAgICAgIGV4Y2x1ZGU6IGdoLXBhZ2VzCgogIHB1Ymxpc2hfbmlnaHRseToKICAgIGltYWdlOiBsYW1wZXBmbC9kb3R0eTowNy0wNi0yMDE3CiAgICBwdWxsOiB0cnVlCiAgICBjb21tYW5kczoKICAgICAgLSAuL3Byb2plY3Qvc2NyaXB0cy9zYnQgIjtjbGVhbiA7cHVibGlzaExvY2FsIiAiJHtDSV9QVUJMSVNIfSIKICAgICAgLSAuL3Byb2plY3Qvc2NyaXB0cy9zYnQgInNidC1kb3R0eS9zY3JpcHRlZCBzb3VyY2UtZGVwZW5kZW5jaWVzLyoiICIke0NJX1BVQkxJU0h9IgogICAgICAtIE5JR0hUTFlCVUlMRD0ieWVzIiAuL3Byb2plY3Qvc2NyaXB0cy9zYnRQdWJsaXNoICR7Q0lfUFVCTElTSH0gJFNPTkFUWVBFX1VTRVIgJFNPTkFUWVBFX1BXICRQR1BfUFcgIjtkb3R0eS1ib290c3RyYXBwZWQvcHVibGlzaFNpZ25lZCA7c29uYXR5cGVSZWxlYXNlIgogICAgdm9sdW1lczoKICAgICAgLSAvaG9tZS9kcm9uZS9rZXlzOi9rZXlzCiAgICB3aGVuOgogICAgICBldmVudDogZGVwbG95bWVudAogICAgICBlbnZpcm9ubWVudDogbmlnaHRseQoKICBwdWJsaXNoX3JlbGVhc2U6CiAgICBpbWFnZTogbGFtcGVwZmwvZG90dHk6MDctMDYtMjAxNwogICAgcHVsbDogdHJ1ZQogICAgY29tbWFuZHM6CiAgICAgIC0gUkVMRUFTRUJVSUxEPSJ5ZXMiIC4vcHJvamVjdC9zY3JpcHRzL3NidFB1Ymxpc2ggJHtDSV9QVUJMSVNIfSAkU09OQVRZUEVfVVNFUiAkU09OQVRZUEVfUFcgJFBHUF9QVyAiO2RvdHR5LWJvb3RzdHJhcHBlZC9wdWJsaXNoU2lnbmVkIDtzb25hdHlwZVJlbGVhc2UiCiAgICB2b2x1bWVzOgogICAgICAtIC9ob21lL2Ryb25lL2tleXM6L2tleXMKICAgIHdoZW46CiAgICAgIGV2ZW50OiBkZXBsb3ltZW50CiAgICAgIGVudmlyb25tZW50OiByZWxlYXNlCgogIHB1Ymxpc2hfc2J0X3JlbGVhc2U6CiAgICBpbWFnZTogbGFtcGVwZmwvZG90dHk6MDctMDYtMjAxNwogICAgcHVsbDogdHJ1ZQogICAgY29tbWFuZHM6CiAgICAgIC0gUkVMRUFTRUJVSUxEPSJ5ZXMiIC4vcHJvamVjdC9zY3JpcHRzL3NidFB1Ymxpc2ggJHtDSV9QVUJMSVNIfSAkU09OQVRZUEVfVVNFUiAkU09OQVRZUEVfUFcgJFBHUF9QVyAiO3NidC1kb3R0eS9wdWJsaXNoU2lnbmVkIDtzb25hdHlwZVJlbGVhc2UiCiAgICB2b2x1bWVzOgogICAgICAtIC9ob21lL2Ryb25lL2tleXM6L2tleXMKICAgIHdoZW46CiAgICAgIGV2ZW50OiBkZXBsb3ltZW50CiAgICAgIGVudmlyb25tZW50OiBzYnRfcmVsZWFzZQoKICBkb2N1bWVudGF0aW9uOgogICAgaW1hZ2U6IGxhbXBlcGZsL2RvdHR5OjA3LTA2LTIwMTcKICAgIHB1bGw6IHRydWUKICAgIGNvbW1hbmRzOgogICAgICAtIC4vcHJvamVjdC9zY3JpcHRzL2dlbkRvY3MgIiR7Q0lfUFVCTElTSH0iICRCT1RfUEFTUwogICAgd2hlbjoKICAgICAgYnJhbmNoOiBtYXN0ZXIKCiAgc2xhY2s6CiAgICBpbWFnZTogcGx1Z2lucy9zbGFjawogICAgY2hhbm5lbDogZG90dHkKICAgIHdoZW46CiAgICAgIGJyYW5jaDogbWFzdGVyCiAgICAgIHN0YXR1czogY2hhbmdlZAoKbWF0cml4OgogIGluY2x1ZGU6CiAgICAtIENJX1RFU1Q6IGRvdHR5LWJpbi10ZXN0cy90ZXN0CiAgICAgIENJX1BVQkxJU0g6IHRydWUKICAgIC0gQ0lfVEVTVDogbGVnYWN5VGVzdHMKICAgICAgQ0lfUFVCTElTSDogZmFsc2UKICAgIC0gQ0lfVEVTVDogO3Rlc3Q7c2J0LWRvdHR5L3NjcmlwdGVkIGNvbXBpbGVyUmVwb3J0ZXIvKjtzYnQtZG90dHkvc2NyaXB0ZWQgZGlzY292ZXJ5Lyo7c2J0LWRvdHR5L3NjcmlwdGVkIHNidC1kb3R0eS8qCiAgICAgIENJX1BVQkxJU0g6IGZhbHNlCiAgICAtIENJX1RFU1Q6IGRvdHR5LWJvb3RzdHJhcHBlZC90ZXN0CiAgICAgIENJX1BVQkxJU0g6IGZhbHNlCiAgICAtIENJX1RFU1Q6IDtzZXQgYm9vdHN0cmFwT3B0aW1pc2VkIGluIFRoaXNCdWlsZCA6PSB0cnVlIDtkb3R0eS1ib290c3RyYXBwZWQvdGVzdAogICAgICBDSV9QVUJMSVNIOiBmYWxzZQo.0COKo7FjFKxUxTYAwxWvpOHgRClgdi9A4M4Kb91h6HQ
13 changes: 11 additions & 2 deletions project/Build.scala
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import org.scalajs.sbtplugin.ScalaJSPlugin.autoImport._
object ExposedValues extends AutoPlugin {
object autoImport {
val bootstrapFromPublishedJars = Build.bootstrapFromPublishedJars
val bootstrapOptimised = Build.bootstrapOptimised
}
}

Expand Down Expand Up @@ -52,6 +53,7 @@ object Build {
val JENKINS_BUILD = "dotty.jenkins.build"
val DRONE_MEM = "dotty.drone.mem"


val agentOptions = List(
// "-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005"
// "-agentpath:/home/dark/opt/yjp-2013-build-13072/bin/linux-x86-64/libyjpagent.so"
Expand Down Expand Up @@ -84,12 +86,14 @@ object Build {
lazy val dottydoc = inputKey[Unit]("run dottydoc")

lazy val bootstrapFromPublishedJars = settingKey[Boolean]("If true, bootstrap dotty from published non-bootstrapped dotty")
lazy val bootstrapOptimised = settingKey[Boolean]("Bootstrap with -optimise")

// Used in build.sbt
lazy val thisBuildSettings = Def.settings(
// Change this to true if you want to bootstrap using a published non-bootstrapped compiler
bootstrapFromPublishedJars := false,

bootstrapOptimised := false,

// Override `runCode` from sbt-dotty to use the language-server and
// vscode extension from the source repository of dotty instead of a
Expand Down Expand Up @@ -167,8 +171,6 @@ object Build {
// otherwise sbt 0.13 incremental compilation breaks (https://github.com/sbt/sbt/issues/3142)
scalacOptions ++= Seq("-bootclasspath", sys.props("sun.boot.class.path")),

scalacOptions += "-optimise",

// sbt gets very unhappy if two projects use the same target
target := baseDirectory.value / ".." / "out" / "bootstrap" / name.value,

Expand All @@ -177,6 +179,13 @@ object Build {
// ...but scala-library is
libraryDependencies += "org.scala-lang" % "scala-library" % scalacVersion,

scalacOptions ++= {
if (bootstrapOptimised.value)
Seq("-optimise")
else
Seq()
},

ivyConfigurations ++= {
if (bootstrapFromPublishedJars.value)
Seq(Configurations.ScalaTool)
Expand Down

0 comments on commit 99f73b9

Please sign in to comment.