diff --git a/utils/benchcomp/main.go b/utils/benchcomp/main.go
index 94acafc..a050f7b 100644
--- a/utils/benchcomp/main.go
+++ b/utils/benchcomp/main.go
@@ -110,6 +110,34 @@
 	return m
 }
 
+func ninja_logs(path string) map[string]float64 {
+	m := make(map[string]float64)
+
+	fh, err := os.Open(path)
+	if err != nil {
+		panic(err.Error())
+	}
+
+	scanner := bufio.NewScanner(fh)
+	for scanner.Scan() {
+		elems := strings.Split(scanner.Text(), "\t")
+		if len(elems) < 4 {
+			continue
+		}
+		begin, err := strconv.ParseInt(elems[0], 10, 64)
+		if err != nil {
+			continue
+		}
+		end, err := strconv.ParseInt(elems[1], 10, 64)
+		if err != nil {
+			panic(err.Error())
+		}
+		m[elems[3]] = float64(end-begin)
+	}
+
+	return m
+}
+
 func main() {
 	var cmp func(string) map[string]float64
 	switch os.Args[1] {
@@ -128,6 +156,9 @@
 		cmp = func(path string) map[string]float64 {
 			return benchnums(path, "allocs/op")
 		}
+
+	case "ninja_logs":
+		cmp = ninja_logs
 	}
 
 	syms1 := cmp(os.Args[2])
