improved check_thy: produce a checked theory_ref (thread-safe version);
removed obsolete self_ref (cf. check_thy);
thread-safeness: when creating certified items, perform Theory.check_thy *last*;
eq_thy: no check here;
marked some critical sections;
#!/usr/bin/env perl
#
# $Id$
# Author: Makarius
#
# DESCRIPTION: Simple report generator for Poly/ML profiling output.
use strict;
my %log = ();
my @output = ();
while (<ARGV>) {
    if (m,^([ 0-9]{10}) (\S+$|GARBAGE COLLECTION.*$),) {
	my $count = $1;
	my $fun = $2;
	$fun =~ s,-?\(\d+\).*$,,g;
	$fun =~ s,/\d+$,,g;
	if ($count =~ m,^\s*(\d)+$,) {
	    if (defined($log{$fun})) {
		$log{$fun} += $count;
	    } else {
		$log{$fun} = $count;
	    }
	}
    }
}
foreach my $fun (keys %log) {
    push @output, (sprintf "%14u %s\n", $log{$fun}, $fun);
}
print (sort @output);