diff --git a/cmd/bench/main.go b/cmd/bench/main.go
index 3699331..67d0d8b 100644
--- a/cmd/bench/main.go
+++ b/cmd/bench/main.go
@@ -4,9 +4,13 @@
 
 // Binary bench provides a unified wrapper around the different types of
 // benchmarks in x/benchmarks.
+//
+// Benchmarks are run against the toolchain in GOROOT, and optionally an
+// additional baseline toolchain in BENCH_BASELINE_GOROOT.
 package main
 
 import (
+	"fmt"
 	"log"
 	"os"
 	"os/exec"
@@ -34,12 +38,7 @@
 	return cmd
 }
 
-func main() {
-	goroot, err := determineGOROOT()
-	if err != nil {
-		log.Fatalf("Unable to determine GOROOT: %v", err)
-	}
-
+func run(goroot string) error {
 	log.Printf("GOROOT under test: %s", goroot)
 
 	pass := true
@@ -55,6 +54,34 @@
 	}
 
 	if !pass {
+		return fmt.Errorf("benchmarks failed")
+	}
+	return nil
+}
+
+func main() {
+	goroot, err := determineGOROOT()
+	if err != nil {
+		log.Fatalf("Unable to determine GOROOT: %v", err)
+	}
+
+	fmt.Println("toolchain: experiment")
+
+	pass := true
+	if err := run(goroot); err != nil {
+		pass = false
+	}
+
+	baseline := os.Getenv("BENCH_BASELINE_GOROOT")
+	if baseline != "" {
+		fmt.Println("toolchain: baseline")
+
+		if err := run(baseline); err != nil {
+			pass = false
+		}
+	}
+
+	if !pass {
 		log.Printf("FAIL")
 		os.Exit(1)
 	}
