profiling ( gprof ) - ClaudioDaffra/qtc GitHub Wiki

i have tested picoc with gprof and a simple mandebroat program i have found on stackoverflow : here below source code, then i have use gprof

  1. compile with -pg
  2. picoc.exe prova.c
  3. gprof picoc.exe < prova.c >> analisys.txt

here following results :

source code :

#include <math.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>

void color(int red, int green, int blue)
{
/*
	fputc((char)red, stdout);
	fputc((char)green, stdout);
	fputc((char)blue, stdout);
*/
}

int main(int argc, char **argv)
{
	int w = 100 , h = 100 , x, y; 
	//each iteration, it calculates: newz = oldz*oldz + p, where p is the current pixel, and oldz stars at the origin
	double pr, pi;                   //real and imaginary part of the pixel p
	double newRe, newIm, oldRe, oldIm;   //real and imaginary parts of new and old z
	double zoom = 1, moveX = -0.5, moveY = 0; //you can change these to zoom and change position
	int maxIterations = 1000;//after how much iterations the function should stop

	clock_t begin, end;
	double time_spent;

	printf("P6\n# CREATOR: E.T / mandel program\n");
	printf("%d %d\n255\n",w,h);

	begin = clock();

	//loop through every pixel
	for(y = 0; y < h; y++)
	for(x = 0; x < w; x++)
	{
		//calculate the initial real and imaginary part of z, based on the pixel location and zoom and position values
	pr = 1.5 * (x - w / 2) / (0.5 * zoom * w) + moveX;
		pi = (y - h / 2) / (0.5 * zoom * h) + moveY;
		newRe = newIm = oldRe = oldIm = 0; //these should start at 0,0
		//"i" will represent the number of iterations
		int i;
		//start the iteration process
		for(i = 0; i < maxIterations; i++)
		{
			//remember value of previous iteration
			oldRe = newRe;
			oldIm = newIm;
			//the actual iteration, the real and imaginary part are calculated
			newRe = oldRe * oldRe - oldIm * oldIm + pr;
			newIm = 2 * oldRe * oldIm + pi;
			//if the point is outside the circle with radius 2: stop
			if((newRe * newRe + newIm * newIm) > 4) break;
		}

		color(i % 256, 255, 255 * (i < maxIterations));

	}

	end = clock();

	time_spent = (double)(end - begin) / CLOCKS_PER_SEC;
	printf("Elapsed time: %.2lf seconds.\n", time_spent);

	return 0;
}

Flat profile:

	Each sample counts as 0.01 seconds.
	  %   cumulative   self              self     total           
	 time   seconds   seconds    calls   s/call   s/call  name    
	 41.25      8.37     8.37                             _mcount_private
	  7.24      9.84     1.47 235586930     0.00     0.00  LexGetRawToken
	  6.46     11.15     1.31 18315797     0.00     0.00  ExpressionParse
	  6.06     12.38     1.23                             TableSearch
	  4.16     13.23     0.84 65447525     0.00     0.00  ExpressionStackCollapse
	  3.30     13.90     0.67 253894946     0.00     0.00  VariableAlloc
	  2.83     14.47     0.57 253914706     0.00     0.00  HeapAllocStack
	  2.56     14.99     0.52 41866023     0.00     0.00  ExpressionInfixOperator
	  2.44     15.48     0.50 235586930     0.00     0.00  LexGetToken
	  2.02     15.90     0.41 104662137     0.00     0.00  ExpressionStackPushValueNode
	  1.72     16.25     0.35 49863651     0.00     0.00  VariableAllocValueAndData
	  1.43     16.54     0.29                             _fentry__
	  1.33     16.81     0.27 167448166     0.00     0.00  HeapPopStack
	  1.33     17.07     0.27 86312362     0.00     0.00  TableGet
	  1.23     17.32     0.25 23536054     0.00     0.00  ParseStatement
	  1.21     17.57     0.25 44480272     0.00     0.00  ExpressionStackPushOperator
	  1.11     17.80     0.23 235588246     0.00     0.00  LexTokenSize
	  1.06     18.01     0.22 54858661     0.00     0.00  VariableAllocValueFromExistingData
	  0.96     18.20     0.20  2631557     0.00     0.00  VariableScopeEnd
	  0.94     18.40     0.19 36570275     0.00     0.00  ExpressionPushFP
	  0.74     18.55     0.15 170203922     0.00     0.00  ParserCopy
	  0.74     18.70     0.15  2631557     0.00     0.00  VariableScopeBegin
	  0.71     18.84     0.14 54858661     0.00     0.00  ExpressionStackPushLValue
	  0.62     18.97     0.13 55136515     0.00     0.00  TypeSizeValue
	  0.59     19.09     0.12  7860155     0.00     0.00  ParserCopyPos
	  0.54     19.20     0.11 86356488     0.00     0.00  TypeStackSizeValue
	  0.49     19.30     0.10 44530472     0.00     0.00  VariableAllocValueFromType
	  0.42     19.38     0.09 300957306     0.00     0.00  debugf
	  0.42     19.47     0.09 20967255     0.00     0.00  IsTypeToken
	  0.39     19.55     0.08 70570258     0.00     0.00  VariableGet
	  0.37     19.62     0.07 54858661     0.00     0.00  VariableAllocValueShared
	  0.30     19.68     0.06      101     0.00     0.00  LexTokenise
	  0.27     19.73     0.06 18305649     0.00     0.00  VariableStackPop
	  0.25     19.79     0.05 20924456     0.00     0.00  DebugCheckStatement
	  0.25     19.84     0.05  5333037     0.00     0.00  VariableAllocValueAndCopy
	  0.17     19.87     0.04 44530472     0.00     0.00  TypeSize
	  0.15     19.90     0.03    30209     0.00     0.00  TableSet
	  0.12     19.93     0.03 10465793     0.00     0.00  ExpressionAssignFP
	  0.12     19.95     0.03                             HeapUnpopStack
	  0.10     19.97     0.02 21095333     0.00     0.00  ExpressionCoerceInteger
	  0.10     19.99     0.02 15701578     0.00     0.00  VariableDefined
	  0.10     20.01     0.02  5215647     0.00     0.00  ExpressionParseInt
	  0.10     20.03     0.02  2621453     0.00     0.00  ParseBlock
	  0.10     20.05     0.02    10104     0.00     0.00  ParseFor
	  0.10     20.07     0.02                             LexRawPeekToken
	  0.10     20.09     0.02                             VariableRealloc
	  0.07     20.11     0.01  5303031     0.00     0.00  ExpressionStackPushValue
	  0.07     20.12     0.01     1316     0.00     0.00  LexScanGetToken
	  0.07     20.14     0.01      101     0.00     0.00  LexInitParser
	  0.07     20.15     0.01                             LexHashEndif
	  0.07     20.16     0.01                             LexHashIncPos
	  0.05     20.18     0.01 86352580     0.00     0.00  TableInitTable
	  0.05     20.18     0.01  7920161     0.00     0.00  ExpressionPushInt
	  0.05     20.20     0.01  2614198     0.00     0.00  ExpressionAssignInt
	  0.05     20.20     0.01  2604094     0.00     0.00  ExpressionPostfixOperator
	  0.05     20.22     0.01    10277     0.00     0.00  TypeParseFront
	  0.05     20.23     0.01    10012     0.00     0.00  ExpressionParseFunctionCall
	  0.05     20.23     0.01       36     0.00     0.00  VariableDefinePlatformVar
	  0.05     20.25     0.01        4     0.00     0.00  ExpressionAssignToPointer
	  0.05     20.25     0.01        1     0.01     0.01  VariableCleanup
	  0.05     20.27     0.01                             memcpy
	  0.05     20.27     0.01                             memset
	  0.02     20.28     0.01    10007     0.00     0.00  ExpressionStackPushValueByType
	  0.02     20.29     0.01    10001     0.00     0.00  VariableStackFrameAdd
	  0.02     20.29     0.01                             VariableDefinedAndOutOfScope
	  0.00     20.29     0.00  2621659     0.00     0.00  ParseStatementMaybeRun
	  0.00     20.29     0.00    30028     0.00     0.00  VariableDefine
	  0.00     20.29     0.00    30013     0.00     0.00  ExpressionAssign
	  0.00     20.29     0.00    20007     0.00     0.00  HeapPopStackFrame
	  0.00     20.29     0.00    20007     0.00     0.00  HeapPushStackFrame
	  0.00     20.29     0.00    10297     0.00     0.00  TypeParseIdentPart
	  0.00     20.29     0.00    10144     0.00     0.00  TypeParseBack
	  0.00     20.29     0.00    10017     0.00     0.00  ParseDeclaration
	  0.00     20.29     0.00    10017     0.00     0.00  TypeIsForwardDeclared
	  0.00     20.29     0.00    10017     0.00     0.00  VariableDefineButIgnoreIdentical
	  0.00     20.29     0.00    10001     0.00     0.00  VariableStackFramePop
	  0.00     20.29     0.00      689     0.00     0.00  HeapFreeMem
	  0.00     20.29     0.00      688     0.00     0.00  HeapAllocMem
	  0.00     20.29     0.00      671     0.00     0.00  TableDelete
	  0.00     20.29     0.00      633     0.00     0.00  TableInit
	  0.00     20.29     0.00      632     0.00     0.00  TableSetIdentifier
	  0.00     20.29     0.00      632     0.00     0.00  TableStrRegister2
	  0.00     20.29     0.00      485     0.00     0.00  LexCheckReservedWord
	  0.00     20.29     0.00      485     0.00     0.00  LexGetWord
	  0.00     20.29     0.00      260     0.00     0.00  TypeParse
	  0.00     20.29     0.00      150     0.00     0.00  VariableFree
	  0.00     20.29     0.00      140     0.00     0.00  TableStrRegister
	  0.00     20.29     0.00      119     0.00     0.00  TypeGetMatching
	  0.00     20.29     0.00      101     0.00     0.00  LexAnalyse
	  0.00     20.29     0.00      101     0.00     0.00  LexUnEscapeCharacter
	  0.00     20.29     0.00       99     0.00     0.00  ParseCountParams
	  0.00     20.29     0.00       99     0.00     0.00  ParseFunctionDefinition
	  0.00     20.29     0.00       65     0.00     0.00  StdioOutPutc
	  0.00     20.29     0.00       21     0.00     0.00  LexGetNumber
	  0.00     20.29     0.00       14     0.00     0.00  LexSkipComment
	  0.00     20.29     0.00       14     0.00     0.00  TypeAddBaseType
	  0.00     20.29     0.00       12     0.00     0.00  ParseDeclarationAssignment
	  0.00     20.29     0.00       11     0.00     0.00  TypeAdd
	  0.00     20.29     0.00        9     0.00     0.00  IncludeRegister
	  0.00     20.29     0.00        7     0.00     0.00  LexGetStringConstant
	  0.00     20.29     0.00        7     0.00     0.00  TypeParseStruct
	  0.00     20.29     0.00        7     0.00     0.00  VariableStringLiteralDefine
	  0.00     20.29     0.00        7     0.00     0.00  VariableStringLiteralGet
	  0.00     20.29     0.00        5     0.00     0.00  ExpressionCoerceFP
	  0.00     20.29     0.00        5     0.00     0.00  VariableTableCleanup
	  0.00     20.29     0.00        4     0.00     0.00  IncludeFile
	  0.00     20.29     0.00        4     0.00     0.02  LibraryAdd
	  0.00     20.29     0.00        4     0.00     0.00  ParseTypedef
	  0.00     20.29     0.00        4     0.00     0.00  PicocParse
	  0.00     20.29     0.00        3     0.00     0.00  StdioBasePrintf
	  0.00     20.29     0.00        3     0.00     0.00  StdioPrintf
	  0.00     20.29     0.00        3     0.00     0.00  TypeCreateOpaqueStruct
	  0.00     20.29     0.00        2     0.00     0.00  ExpressionCoerceUnsignedInteger
	  0.00     20.29     0.00        2     0.00     0.00  LexCopyTokens
	  0.00     20.29     0.00        2     0.00     0.00  StdClock
	  0.00     20.29     0.00        2     0.00     0.00  StdioFprintfWord
	  0.00     20.29     0.00        1     0.00     0.00  BasicIOInit
	  0.00     20.29     0.00        1     0.00     0.00  DebugCleanup
	  0.00     20.29     0.00        1     0.00     0.00  DebugInit
	  0.00     20.29     0.00        1     0.00     0.00  ExpressionPrefixOperator
	  0.00     20.29     0.00        1     0.00     0.00  HeapCleanup
	  0.00     20.29     0.00        1     0.00     0.00  HeapInit
	  0.00     20.29     0.00        1     0.00     0.00  IncludeCleanup
	  0.00     20.29     0.00        1     0.00     0.00  IncludeInit
	  0.00     20.29     0.00        1     0.00     0.00  LexCleanup
	  0.00     20.29     0.00        1     0.00     0.00  LexInit
	  0.00     20.29     0.00        1     0.00     0.00  LexInteractiveClear
	  0.00     20.29     0.00        1     0.00     0.00  LibraryInit
	  0.00     20.29     0.00        1     0.00     0.00  MathSetupFunc
	  0.00     20.29     0.00        1     0.00     0.00  ParseCleanup
	  0.00     20.29     0.00        1     0.00     5.13  PicocCallMain
	  0.00     20.29     0.00        1     0.00     0.01  PicocCleanup
	  0.00     20.29     0.00        1     0.00     0.00  PicocInitialise
	  0.00     20.29     0.00        1     0.00     5.13  PicocPlatformScanFile
	  0.00     20.29     0.00        1     0.00     0.00  PlatformCleanup
	  0.00     20.29     0.00        1     0.00     0.00  PlatformInit
	  0.00     20.29     0.00        1     0.00     0.00  PlatformLibraryInit
	  0.00     20.29     0.00        1     0.00     0.00  PlatformReadFile
	  0.00     20.29     0.00        1     0.00     0.00  StdTimeSetupFunc
	  0.00     20.29     0.00        1     0.00     0.00  StdioFprintfFP
	  0.00     20.29     0.00        1     0.00     0.00  StdioSetupFunc
	  0.00     20.29     0.00        1     0.00     0.00  StdlibSetupFunc
	  0.00     20.29     0.00        1     0.00     0.00  TableStrFree
	  0.00     20.29     0.00        1     0.00     0.00  TypeCleanup
	  0.00     20.29     0.00        1     0.00     0.00  TypeCleanupNode
	  0.00     20.29     0.00        1     0.00     0.00  TypeInit
	  0.00     20.29     0.00        1     0.00     0.00  VariableInit

% the percentage of the total running time of the time program used by this function.

cumulative a running sum of the number of seconds accounted seconds for by this function and those listed above it.

self the number of seconds accounted for by this seconds function alone. This is the major sort for this listing.

calls the number of times this function was invoked, if this function is profiled, else blank.

self the average number of milliseconds spent in this ms/call function per call, if this function is profiled, else blank.

total the average number of milliseconds spent in this ms/call function and its descendents per call, if this function is profiled, else blank.

name the name of the function. This is the minor sort for this listing. The index shows the location of the function in the gprof listing. If the index is in parenthesis it shows where it would appear in the gprof listing if it were to be printed.

Copyright (C) 2012-2014 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

	     Call graph (explanation follows)


	granularity: each sample hit covers 4 byte(s) for 0.05% of 20.29 seconds

	index % time    self  children    called     name
													 <spontaneous>
	[1]     50.7    0.00   10.28                 main [1]
					0.00    5.13       1/1           PicocCallMain [5]
					0.00    5.13       1/1           PicocPlatformScanFile [6]
					0.00    0.01       1/1           PicocCleanup [69]
					0.00    0.00       1/1           PicocInitialise [80]
	-----------------------------------------------
	[2]     50.6    1.63    8.64       2+52340864 <cycle 1 as a whole> [2]
					1.31    7.23 18315797             ExpressionParse <cycle 1> [3]
					0.25    0.69 23536054             ParseStatement <cycle 1> [15]
					0.02    0.37 2621453             ParseBlock <cycle 1> [23]
					0.02    0.15   10104             ParseFor <cycle 1> [33]
					0.00    0.09       4             LibraryAdd <cycle 1> [42]
					0.01    0.05   10012             ExpressionParseFunctionCall <cycle 1> [47]
					0.02    0.04 5215647             ExpressionParseInt <cycle 1> [48]
					0.00    0.01   10017             ParseDeclaration <cycle 1> [63]
					0.00    0.01       4             IncludeFile <cycle 1> [73]
					0.00    0.00       4             PicocParse <cycle 1> [79]
					0.00    0.00      99             ParseFunctionDefinition <cycle 1> [84]
					0.00    0.00      12             ParseDeclarationAssignment <cycle 1> [95]
					0.00    0.00 2621659             ParseStatementMaybeRun <cycle 1> [113]
	-----------------------------------------------
									  12             ParseDeclarationAssignment <cycle 1> [95]
								   30021             ExpressionParseFunctionCall <cycle 1> [47]
								 5215647             ExpressionParseInt <cycle 1> [48]
								 13070117             ParseStatement <cycle 1> [15]
	[3]     42.1    1.31    7.23 18315797         ExpressionParse <cycle 1> [3]
					0.84    2.29 65447525/65447525     ExpressionStackCollapse [7]
					0.39    1.34 185811138/235586930     LexGetToken [8]
					0.14    1.04 54858661/54858661     ExpressionStackPushLValue [13]
					0.25    0.23 44480272/44480272     ExpressionStackPushOperator [22]
					0.06    0.18 54858661/70570258     VariableGet [24]
					0.01    0.17 5303031/5303031     ExpressionStackPushValue [31]
					0.13    0.00 146596641/170203922     ParserCopy [34]
					0.09    0.02 20967255/20967255     IsTypeToken [40]
					0.03    0.00 18315793/167448166     HeapPopStack [27]
					0.01    0.00 36631594/300957306     debugf [43]
					0.00    0.00   10159/7920161     ExpressionPushInt [29]
					0.00    0.00   10141/86356488     TypeStackSizeValue [32]
					0.00    0.00       2/260         TypeParse [85]
					0.00    0.00       2/44530472     VariableAllocValueFromType [17]
					0.00    0.00       2/104662137     ExpressionStackPushValueNode [16]
								   10012             ExpressionParseFunctionCall <cycle 1> [47]
	-----------------------------------------------
													 <spontaneous>
	[4]     41.3    8.37    0.00                 _mcount_private [4]
	-----------------------------------------------
					0.00    5.13       1/1           main [1]
	[5]     25.3    0.00    5.13       1         PicocCallMain [5]
					0.81    4.32       1/2           PicocParse <cycle 1> [79]
					0.00    0.00       3/36          VariableDefinePlatformVar [65]
					0.00    0.00       1/15701578     VariableDefined [46]
					0.00    0.00       1/70570258     VariableGet [24]
					0.00    0.00       2/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    5.13       1/1           main [1]
	[6]     25.3    0.00    5.13       1         PicocPlatformScanFile [6]
					0.81    4.32       1/2           PicocParse <cycle 1> [79]
					0.00    0.00       1/1           PlatformReadFile [147]
	-----------------------------------------------
					0.84    2.29 65447525/65447525     ExpressionParse <cycle 1> [3]
	[7]     15.5    0.84    2.29 65447525         ExpressionStackCollapse [7]
					0.52    1.24 41866023/41866023     ExpressionInfixOperator [9]
					0.21    0.00 130826616/167448166     HeapPopStack [27]
					0.11    0.07 86346344/86356488     TypeStackSizeValue [32]
					0.01    0.08 2604094/2604094     ExpressionPostfixOperator [41]
					0.05    0.00 175375322/300957306     debugf [43]
					0.00    0.00   10154/7920161     ExpressionPushInt [29]
					0.00    0.00       1/1           ExpressionPrefixOperator [101]
	-----------------------------------------------
					0.00    0.00      12/235586930     ParseDeclarationAssignment <cycle 1> [95]
					0.00    0.00      28/235586930     TypeParseStruct [98]
					0.00    0.00     437/235586930     ParseCountParams [94]
					0.00    0.00     546/235586930     ParseFunctionDefinition <cycle 1> [84]
					0.00    0.00   10144/235586930     TypeParseBack [87]
					0.00    0.00   10277/235586930     TypeParseFront [64]
					0.00    0.00   10405/235586930     TypeParseIdentPart [86]
					0.00    0.00   30139/235586930     ParseDeclaration <cycle 1> [63]
					0.00    0.00   40033/235586930     ExpressionParseFunctionCall <cycle 1> [47]
					0.01    0.02 2621453/235586930     ParseBlock <cycle 1> [23]
					0.01    0.02 2644510/235586930     ParseFor <cycle 1> [33]
					0.09    0.32 44407808/235586930     ParseStatement <cycle 1> [15]
					0.39    1.34 185811138/235586930     ExpressionParse <cycle 1> [3]
	[8]     10.8    0.50    1.69 235586930         LexGetToken [8]
					1.47    0.22 235586930/235586930     LexGetRawToken [10]
	-----------------------------------------------
					0.52    1.24 41866023/41866023     ExpressionStackCollapse [7]
	[9]      8.7    0.52    1.24 41866023         ExpressionInfixOperator [9]
					0.19    0.87 36570274/36570275     ExpressionPushFP [14]
					0.01    0.13 5295748/7920161     ExpressionPushInt [29]
					0.03    0.00 10465793/10465793     ExpressionAssignFP [53]
					0.01    0.00 41866023/300957306     debugf [43]
					0.01    0.00 10641497/21095333     ExpressionCoerceInteger [55]
					0.00    0.00   10104/2614198     ExpressionAssignInt [62]
					0.00    0.00       1/10007       ExpressionStackPushValueByType [74]
					0.00    0.00       1/30013       ExpressionAssign [66]
	-----------------------------------------------
					1.47    0.22 235586930/235586930     LexGetToken [8]
	[10]     8.4    1.47    0.22 235586930         LexGetRawToken [10]
					0.22    0.00 235586930/235588246     LexTokenSize [28]
	-----------------------------------------------
					0.00    0.00       2/253894946     LexCopyTokens [105]
					0.00    0.00       3/253894946     TypeCreateOpaqueStruct [104]
					0.00    0.00      11/253894946     TypeAdd [99]
					0.00    0.00   30209/253894946     TableSet [52]
					0.12    0.10 44480272/253894946     ExpressionStackPushOperator [22]
					0.13    0.11 49863651/253894946     VariableAllocValueAndData [18]
					0.14    0.12 54858661/253894946     VariableAllocValueFromExistingData [21]
					0.28    0.24 104662137/253894946     ExpressionStackPushValueNode [16]
	[11]     6.1    0.67    0.57 253894946         VariableAlloc [11]
					0.57    0.00 253894591/253914706     HeapAllocStack [19]
					0.00    0.00     355/688         HeapAllocMem [118]
	-----------------------------------------------
													 <spontaneous>
	[12]     6.1    1.23    0.00                 TableSearch [12]
	-----------------------------------------------
					0.14    1.04 54858661/54858661     ExpressionParse <cycle 1> [3]
	[13]     5.9    0.14    1.04 54858661         ExpressionStackPushLValue [13]
					0.07    0.48 54858661/54858661     VariableAllocValueShared [20]
					0.21    0.27 54858661/104662137     ExpressionStackPushValueNode [16]
	-----------------------------------------------
					0.00    0.00       1/36570275     ExpressionPrefixOperator [101]
					0.19    0.87 36570274/36570275     ExpressionInfixOperator [9]
	[14]     5.2    0.19    0.87 36570275         ExpressionPushFP [14]
					0.08    0.46 36570275/44530472     VariableAllocValueFromType [17]
					0.14    0.18 36570275/104662137     ExpressionStackPushValueNode [16]
	-----------------------------------------------
									  15             PicocParse <cycle 1> [79]
								   10001             ExpressionParseFunctionCall <cycle 1> [47]
								 2621659             ParseStatementMaybeRun <cycle 1> [113]
								 5215645             ParseFor <cycle 1> [33]
								 15688734             ParseBlock <cycle 1> [23]
	[15]     4.6    0.25    0.69 23536054         ParseStatement <cycle 1> [15]
					0.09    0.32 44407808/235586930     LexGetToken [8]
					0.04    0.05 13059995/18305649     VariableStackPop [36]
					0.02    0.04 13070117/15701578     VariableDefined [46]
					0.01    0.04 13070101/70570258     VariableGet [24]
					0.05    0.00 20924456/20924456     DebugCheckStatement [49]
					0.02    0.00 23536054/170203922     ParserCopy [34]
					0.00    0.00       4/4           ParseTypedef [91]
					0.00    0.00       1/30013       ExpressionAssign [66]
								 13070117             ExpressionParse <cycle 1> [3]
								 2621453             ParseBlock <cycle 1> [23]
								 2601449             ExpressionParseInt <cycle 1> [48]
								 2601449             ParseStatementMaybeRun <cycle 1> [113]
								   10104             ParseFor <cycle 1> [33]
								   10017             ParseDeclaration <cycle 1> [63]
									   4             IncludeFile <cycle 1> [73]
	-----------------------------------------------
					0.00    0.00       2/104662137     ExpressionParse <cycle 1> [3]
					0.00    0.00   10007/104662137     ExpressionStackPushValueByType [74]
					0.02    0.03 5303031/104662137     ExpressionStackPushValue [31]
					0.03    0.04 7920161/104662137     ExpressionPushInt [29]
					0.14    0.18 36570275/104662137     ExpressionPushFP [14]
					0.21    0.27 54858661/104662137     ExpressionStackPushLValue [13]
	[16]     4.6    0.41    0.51 104662137         ExpressionStackPushValueNode [16]
					0.28    0.24 104662137/253894946     VariableAlloc [11]
	-----------------------------------------------
					0.00    0.00       2/44530472     ExpressionParse <cycle 1> [3]
					0.00    0.00      22/44530472     VariableDefine [51]
					0.00    0.00   10007/44530472     ExpressionStackPushValueByType [74]
					0.00    0.00   30005/44530472     ExpressionParseFunctionCall <cycle 1> [47]
					0.02    0.10 7920161/44530472     ExpressionPushInt [29]
					0.08    0.46 36570275/44530472     ExpressionPushFP [14]
	[17]     3.3    0.10    0.57 44530472         VariableAllocValueFromType [17]
					0.31    0.22 44530472/49863651     VariableAllocValueAndData [18]
					0.04    0.00 44530472/44530472     TypeSize [50]
	-----------------------------------------------
					0.00    0.00       7/49863651     LexGetStringConstant [92]
					0.00    0.00      36/49863651     VariableDefinePlatformVar [65]
					0.00    0.00      99/49863651     ParseFunctionDefinition <cycle 1> [84]
					0.04    0.03 5333037/49863651     VariableAllocValueAndCopy [37]
					0.31    0.22 44530472/49863651     VariableAllocValueFromType [17]
	[18]     2.9    0.35    0.24 49863651         VariableAllocValueAndData [18]
					0.13    0.11 49863651/253894946     VariableAlloc [11]
	-----------------------------------------------
					0.00    0.00       7/253914706     LexGetStringConstant [92]
					0.00    0.00     101/253914706     LexTokenise [45]
					0.00    0.00   10001/253914706     VariableStackFrameAdd [75]
					0.00    0.00   10006/253914706     ExpressionParseFunctionCall <cycle 1> [47]
					0.57    0.00 253894591/253914706     VariableAlloc [11]
	[19]     2.8    0.57    0.00 253914706         HeapAllocStack [19]
	-----------------------------------------------
					0.07    0.48 54858661/54858661     ExpressionStackPushLValue [13]
	[20]     2.8    0.07    0.48 54858661         VariableAllocValueShared [20]
					0.22    0.27 54858661/54858661     VariableAllocValueFromExistingData [21]
	-----------------------------------------------
					0.22    0.27 54858661/54858661     VariableAllocValueShared [20]
	[21]     2.4    0.22    0.27 54858661         VariableAllocValueFromExistingData [21]
					0.14    0.12 54858661/253894946     VariableAlloc [11]
	-----------------------------------------------
					0.25    0.23 44480272/44480272     ExpressionParse <cycle 1> [3]
	[22]     2.3    0.25    0.23 44480272         ExpressionStackPushOperator [22]
					0.12    0.10 44480272/253894946     VariableAlloc [11]
					0.01    0.00 44480272/300957306     debugf [43]
	-----------------------------------------------
								 2621453             ParseStatement <cycle 1> [15]
	[23]     1.9    0.02    0.37 2621453         ParseBlock <cycle 1> [23]
					0.19    0.00 2621453/2631557     VariableScopeEnd [30]
					0.15    0.00 2621453/2631557     VariableScopeBegin [35]
					0.01    0.02 2621453/235586930     LexGetToken [8]
								 15688734             ParseStatement <cycle 1> [15]
	-----------------------------------------------
					0.00    0.00       1/70570258     PicocCallMain [5]
					0.00    0.00      40/70570258     TypeParseFront [64]
					0.00    0.00   10006/70570258     ExpressionParseFunctionCall <cycle 1> [47]
					0.00    0.01 2631449/70570258     IsTypeToken [40]
					0.01    0.04 13070101/70570258     ParseStatement <cycle 1> [15]
					0.06    0.18 54858661/70570258     ExpressionParse <cycle 1> [3]
	[24]     1.5    0.08    0.23 70570258         VariableGet [24]
					0.22    0.01 70590269/86312362     TableGet [26]
	-----------------------------------------------
													 <spontaneous>
	[25]     1.4    0.29    0.00                 _fentry__ [25]
	-----------------------------------------------
					0.00    0.00       2/86312362     ParseFunctionDefinition <cycle 1> [84]
					0.00    0.00       7/86312362     VariableStringLiteralGet [102]
					0.00    0.00     485/86312362     LexCheckReservedWord [96]
					0.00    0.00   10017/86312362     VariableDefineButIgnoreIdentical [88]
					0.05    0.00 15711582/86312362     VariableDefined [46]
					0.22    0.01 70590269/86312362     VariableGet [24]
	[26]     1.4    0.27    0.01 86312362         TableGet [26]
					0.01    0.00 86312362/86352580     TableInitTable [67]
	-----------------------------------------------
					0.00    0.00       7/167448166     LexGetStringConstant [92]
					0.00    0.00     101/167448166     LexTokenise [45]
					0.03    0.00 18305649/167448166     VariableStackPop [36]
					0.03    0.00 18315793/167448166     ExpressionParse <cycle 1> [3]
					0.21    0.00 130826616/167448166     ExpressionStackCollapse [7]
	[27]     1.3    0.27    0.00 167448166         HeapPopStack [27]
	-----------------------------------------------
					0.00    0.00    1316/235588246     LexTokenise [45]
					0.22    0.00 235586930/235588246     LexGetRawToken [10]
	[28]     1.1    0.23    0.00 235588246         LexTokenSize [28]
	-----------------------------------------------
					0.00    0.00       6/7920161     ExpressionParseFunctionCall <cycle 1> [47]
					0.00    0.00   10154/7920161     ExpressionStackCollapse [7]
					0.00    0.00   10159/7920161     ExpressionParse <cycle 1> [3]
					0.00    0.06 2604094/7920161     ExpressionPostfixOperator [41]
					0.01    0.13 5295748/7920161     ExpressionInfixOperator [9]
	[29]     1.0    0.01    0.19 7920161         ExpressionPushInt [29]
					0.02    0.10 7920161/44530472     VariableAllocValueFromType [17]
					0.03    0.04 7920161/104662137     ExpressionStackPushValueNode [16]
	-----------------------------------------------
					0.00    0.00   10104/2631557     ParseFor <cycle 1> [33]
					0.19    0.00 2621453/2631557     ParseBlock <cycle 1> [23]
	[30]     1.0    0.20    0.00 2631557         VariableScopeEnd [30]
	-----------------------------------------------
					0.01    0.17 5303031/5303031     ExpressionParse <cycle 1> [3]
	[31]     0.9    0.01    0.17 5303031         ExpressionStackPushValue [31]
					0.05    0.08 5303031/5333037     VariableAllocValueAndCopy [37]
					0.02    0.03 5303031/104662137     ExpressionStackPushValueNode [16]
	-----------------------------------------------
					0.00    0.00       3/86356488     StdioBasePrintf [106]
					0.00    0.00   10141/86356488     ExpressionParse <cycle 1> [3]
					0.11    0.07 86346344/86356488     ExpressionStackCollapse [7]
	[32]     0.9    0.11    0.07 86356488         TypeStackSizeValue [32]
					0.07    0.00 31497831/55136515     TypeSizeValue [38]
	-----------------------------------------------
								   10104             ParseStatement <cycle 1> [15]
	[33]     0.8    0.02    0.15   10104         ParseFor <cycle 1> [33]
					0.12    0.00 7860155/7860155     ParserCopyPos [39]
					0.01    0.02 2644510/235586930     LexGetToken [8]
					0.00    0.00   10104/2631557     VariableScopeEnd [30]
					0.00    0.00   10104/2631557     VariableScopeBegin [35]
								 5215645             ParseStatement <cycle 1> [15]
								 2614198             ExpressionParseInt <cycle 1> [48]
								   20208             ParseStatementMaybeRun <cycle 1> [113]
	-----------------------------------------------
					0.00    0.00     101/170203922     ParseFunctionDefinition <cycle 1> [84]
					0.00    0.00   10001/170203922     ExpressionParseFunctionCall <cycle 1> [47]
					0.00    0.00   10001/170203922     VariableStackFrameAdd [75]
					0.00    0.00   10001/170203922     VariableStackFramePop [90]
					0.00    0.00   10277/170203922     TypeParseFront [64]
					0.00    0.00   10558/170203922     TypeParseIdentPart [86]
					0.00    0.00   20288/170203922     TypeParseBack [87]
					0.02    0.00 23536054/170203922     ParseStatement <cycle 1> [15]
					0.13    0.00 146596641/170203922     ExpressionParse <cycle 1> [3]
	[34]     0.7    0.15    0.00 170203922         ParserCopy [34]
	-----------------------------------------------
					0.00    0.00   10104/2631557     ParseFor <cycle 1> [33]
					0.15    0.00 2621453/2631557     ParseBlock <cycle 1> [23]
	[35]     0.7    0.15    0.00 2631557         VariableScopeBegin [35]
	-----------------------------------------------
					0.00    0.00       6/18305649     ParseDeclarationAssignment <cycle 1> [95]
					0.00    0.00   30005/18305649     ExpressionParseFunctionCall <cycle 1> [47]
					0.02    0.02 5215643/18305649     ExpressionParseInt <cycle 1> [48]
					0.04    0.05 13059995/18305649     ParseStatement <cycle 1> [15]
	[36]     0.6    0.06    0.07 18305649         VariableStackPop [36]
					0.04    0.00 18305647/55136515     TypeSizeValue [38]
					0.03    0.00 18305649/167448166     HeapPopStack [27]
	-----------------------------------------------
					0.00    0.00   30006/5333037     VariableDefine [51]
					0.05    0.08 5303031/5333037     ExpressionStackPushValue [31]
	[37]     0.6    0.05    0.08 5333037         VariableAllocValueAndCopy [37]
					0.04    0.03 5333037/49863651     VariableAllocValueAndData [18]
					0.01    0.00 5333037/55136515     TypeSizeValue [38]
	-----------------------------------------------
					0.01    0.00 5333037/55136515     VariableAllocValueAndCopy [37]
					0.04    0.00 18305647/55136515     VariableStackPop [36]
					0.07    0.00 31497831/55136515     TypeStackSizeValue [32]
	[38]     0.6    0.13    0.00 55136515         TypeSizeValue [38]
	-----------------------------------------------
					0.12    0.00 7860155/7860155     ParseFor <cycle 1> [33]
	[39]     0.6    0.12    0.00 7860155         ParserCopyPos [39]
	-----------------------------------------------
					0.09    0.02 20967255/20967255     ExpressionParse <cycle 1> [3]
	[40]     0.5    0.09    0.02 20967255         IsTypeToken [40]
					0.00    0.01 2631454/15701578     VariableDefined [46]
					0.00    0.01 2631449/70570258     VariableGet [24]
	-----------------------------------------------
					0.01    0.08 2604094/2604094     ExpressionStackCollapse [7]
	[41]     0.4    0.01    0.08 2604094         ExpressionPostfixOperator [41]
					0.00    0.06 2604094/7920161     ExpressionPushInt [29]
					0.01    0.00 2604094/2614198     ExpressionAssignInt [62]
					0.00    0.00 2604094/21095333     ExpressionCoerceInteger [55]
					0.00    0.00 2604094/300957306     debugf [43]
	-----------------------------------------------
									   4             IncludeFile <cycle 1> [73]
	[42]     0.4    0.00    0.09       4         LibraryAdd <cycle 1> [42]
					0.00    0.07      97/101         LexAnalyse [44]
					0.01    0.00      97/101         LexInitParser [59]
					0.00    0.00      97/260         TypeParse [85]
					0.00    0.00      97/689         HeapFreeMem [117]
					0.00    0.00       4/140         TableStrRegister [123]
									  97             ParseFunctionDefinition <cycle 1> [84]
	-----------------------------------------------
					0.00    0.00       1/300957306     ExpressionPrefixOperator [101]
					0.00    0.00 2604094/300957306     ExpressionPostfixOperator [41]
					0.01    0.00 36631594/300957306     ExpressionParse <cycle 1> [3]
					0.01    0.00 41866023/300957306     ExpressionInfixOperator [9]
					0.01    0.00 44480272/300957306     ExpressionStackPushOperator [22]
					0.05    0.00 175375322/300957306     ExpressionStackCollapse [7]
	[43]     0.4    0.09    0.00 300957306         debugf [43]
	-----------------------------------------------
					0.00    0.00       4/101         PicocParse <cycle 1> [79]
					0.00    0.07      97/101         LibraryAdd <cycle 1> [42]
	[44]     0.4    0.00    0.08     101         LexAnalyse [44]
					0.06    0.02     101/101         LexTokenise [45]
	-----------------------------------------------
					0.06    0.02     101/101         LexAnalyse [44]
	[45]     0.4    0.06    0.02     101         LexTokenise [45]
					0.01    0.00    1316/1316        LexScanGetToken [58]
					0.00    0.00    1316/235588246     LexTokenSize [28]
					0.00    0.00     101/253914706     HeapAllocStack [19]
					0.00    0.00     101/167448166     HeapPopStack [27]
					0.00    0.00     101/688         HeapAllocMem [118]
	-----------------------------------------------
					0.00    0.00       1/15701578     PicocCallMain [5]
					0.00    0.00       1/15701578     StdioSetupFunc [77]
					0.00    0.00       1/15701578     StdlibSetupFunc [83]
					0.00    0.00       4/15701578     IncludeFile <cycle 1> [73]
					0.00    0.01 2631454/15701578     IsTypeToken [40]
					0.02    0.04 13070117/15701578     ParseStatement <cycle 1> [15]
	[46]     0.3    0.02    0.05 15701578         VariableDefined [46]
					0.05    0.00 15711582/86312362     TableGet [26]
	-----------------------------------------------
								   10012             ExpressionParse <cycle 1> [3]
	[47]     0.3    0.01    0.05   10012         ExpressionParseFunctionCall <cycle 1> [47]
					0.00    0.03   30002/30028       VariableDefine [51]
					0.00    0.01   30005/30013       ExpressionAssign [66]
					0.00    0.00   10006/10007       ExpressionStackPushValueByType [74]
					0.01    0.00   10001/10001       VariableStackFrameAdd [75]
					0.00    0.00   30005/44530472     VariableAllocValueFromType [17]
					0.00    0.00   40033/235586930     LexGetToken [8]
					0.00    0.00   30005/18305649     VariableStackPop [36]
					0.00    0.00   10006/70570258     VariableGet [24]
					0.00    0.00   10006/253914706     HeapAllocStack [19]
					0.00    0.00   10001/170203922     ParserCopy [34]
					0.00    0.00   10001/10001       VariableStackFramePop [90]
					0.00    0.00       6/7920161     ExpressionPushInt [29]
					0.00    0.00       3/3           StdioPrintf [107]
					0.00    0.00   10006/20007       HeapPushStackFrame [115]
					0.00    0.00   10006/20007       HeapPopStackFrame [114]
					0.00    0.00       2/2           StdClock [133]
								   30021             ExpressionParse <cycle 1> [3]
								   10001             ParseStatement <cycle 1> [15]
	-----------------------------------------------
								 2601449             ParseStatement <cycle 1> [15]
								 2614198             ParseFor <cycle 1> [33]
	[48]     0.3    0.02    0.04 5215647         ExpressionParseInt <cycle 1> [48]
					0.02    0.02 5215643/18305649     VariableStackPop [36]
					0.00    0.00 5215643/21095333     ExpressionCoerceInteger [55]
								 5215647             ExpressionParse <cycle 1> [3]
	-----------------------------------------------
					0.05    0.00 20924456/20924456     ParseStatement <cycle 1> [15]
	[49]     0.2    0.05    0.00 20924456         DebugCheckStatement [49]
	-----------------------------------------------
					0.04    0.00 44530472/44530472     VariableAllocValueFromType [17]
	[50]     0.2    0.04    0.00 44530472         TypeSize [50]
	-----------------------------------------------
					0.00    0.00       4/30028       ParseTypedef [91]
					0.00    0.00       4/30028       IncludeFile <cycle 1> [73]
					0.00    0.00      18/30028       VariableDefineButIgnoreIdentical [88]
					0.00    0.03   30002/30028       ExpressionParseFunctionCall <cycle 1> [47]
	[51]     0.2    0.00    0.03   30028         VariableDefine [51]
					0.03    0.00   30028/30209       TableSet [52]
					0.00    0.00   30006/5333037     VariableAllocValueAndCopy [37]
					0.00    0.00      22/44530472     VariableAllocValueFromType [17]
	-----------------------------------------------
					0.00    0.00       7/30209       VariableStringLiteralDefine [93]
					0.00    0.00      36/30209       VariableDefinePlatformVar [65]
					0.00    0.00      39/30209       LexInit [89]
					0.00    0.00      99/30209       ParseFunctionDefinition <cycle 1> [84]
					0.03    0.00   30028/30209       VariableDefine [51]
	[52]     0.1    0.03    0.00   30209         TableSet [52]
					0.00    0.00   30209/253894946     VariableAlloc [11]
					0.00    0.00   30209/86352580     TableInitTable [67]
	-----------------------------------------------
					0.03    0.00 10465793/10465793     ExpressionInfixOperator [9]
	[53]     0.1    0.03    0.00 10465793         ExpressionAssignFP [53]
	-----------------------------------------------
													 <spontaneous>
	[54]     0.1    0.03    0.00                 HeapUnpopStack [54]
	-----------------------------------------------
					0.00    0.00   30005/21095333     ExpressionAssign [66]
					0.00    0.00 2604094/21095333     ExpressionAssignInt [62]
					0.00    0.00 2604094/21095333     ExpressionPostfixOperator [41]
					0.00    0.00 5215643/21095333     ExpressionParseInt <cycle 1> [48]
					0.01    0.00 10641497/21095333     ExpressionInfixOperator [9]
	[55]     0.1    0.02    0.00 21095333         ExpressionCoerceInteger [55]
	-----------------------------------------------
													 <spontaneous>
	[56]     0.1    0.02    0.00                 LexRawPeekToken [56]
	-----------------------------------------------
													 <spontaneous>
	[57]     0.1    0.02    0.00                 VariableRealloc [57]
	-----------------------------------------------
					0.01    0.00    1316/1316        LexTokenise [45]
	[58]     0.1    0.01    0.00    1316         LexScanGetToken [58]
					0.00    0.00       7/7           LexGetStringConstant [92]
					0.00    0.00     485/485         LexGetWord [97]
					0.00    0.00      21/21          LexGetNumber [126]
					0.00    0.00      14/14          LexSkipComment [127]
	-----------------------------------------------
					0.00    0.00       4/101         PicocParse <cycle 1> [79]
					0.01    0.00      97/101         LibraryAdd <cycle 1> [42]
	[59]     0.1    0.01    0.00     101         LexInitParser [59]
	-----------------------------------------------
													 <spontaneous>
	[60]     0.1    0.01    0.00                 LexHashEndif [60]
	-----------------------------------------------
													 <spontaneous>
	[61]     0.1    0.01    0.00                 LexHashIncPos [61]
	-----------------------------------------------
					0.00    0.00   10104/2614198     ExpressionInfixOperator [9]
					0.01    0.00 2604094/2614198     ExpressionPostfixOperator [41]
	[62]     0.1    0.01    0.00 2614198         ExpressionAssignInt [62]
					0.00    0.00 2604094/21095333     ExpressionCoerceInteger [55]
	-----------------------------------------------
								   10017             ParseStatement <cycle 1> [15]
	[63]     0.1    0.00    0.01   10017         ParseDeclaration <cycle 1> [63]
					0.01    0.00   10017/10277       TypeParseFront [64]
					0.00    0.00   30139/235586930     LexGetToken [8]
					0.00    0.00   10037/10297       TypeParseIdentPart [86]
					0.00    0.00   10017/10017       VariableDefineButIgnoreIdentical [88]
									  12             ParseDeclarationAssignment <cycle 1> [95]
									   2             ParseFunctionDefinition <cycle 1> [84]
	-----------------------------------------------
					0.00    0.00     260/10277       TypeParse [85]
					0.01    0.00   10017/10277       ParseDeclaration <cycle 1> [63]
	[64]     0.0    0.01    0.00   10277         TypeParseFront [64]
					0.00    0.00   10277/235586930     LexGetToken [8]
					0.00    0.00   10277/170203922     ParserCopy [34]
					0.00    0.00       7/7           TypeParseStruct [98]
					0.00    0.00      40/70570258     VariableGet [24]
	-----------------------------------------------
					0.00    0.00       1/36          StdlibSetupFunc [83]
					0.00    0.00       2/36          StdTimeSetupFunc [82]
					0.00    0.00       3/36          LibraryInit [81]
					0.00    0.00       3/36          PicocCallMain [5]
					0.00    0.00      13/36          MathSetupFunc [78]
					0.00    0.00      14/36          StdioSetupFunc [77]
	[65]     0.0    0.01    0.00      36         VariableDefinePlatformVar [65]
					0.00    0.00      36/30209       TableSet [52]
					0.00    0.00      36/49863651     VariableAllocValueAndData [18]
					0.00    0.00      36/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00       1/30013       ParseStatement <cycle 1> [15]
					0.00    0.00       1/30013       ExpressionInfixOperator [9]
					0.00    0.00       6/30013       ParseDeclarationAssignment <cycle 1> [95]
					0.00    0.01   30005/30013       ExpressionParseFunctionCall <cycle 1> [47]
	[66]     0.0    0.00    0.01   30013         ExpressionAssign [66]
					0.01    0.00       4/4           ExpressionAssignToPointer [68]
					0.00    0.00   30005/21095333     ExpressionCoerceInteger [55]
					0.00    0.00       4/5           ExpressionCoerceFP [130]
	-----------------------------------------------
					0.00    0.00       1/86352580     TableInit [109]
					0.00    0.00       1/86352580     LexInit [89]
					0.00    0.00       1/86352580     DebugInit [110]
					0.00    0.00       2/86352580     VariableInit [108]
					0.00    0.00       3/86352580     TypeCreateOpaqueStruct [104]
					0.00    0.00   10001/86352580     VariableStackFrameAdd [75]
					0.00    0.00   30209/86352580     TableSet [52]
					0.01    0.00 86312362/86352580     TableGet [26]
	[67]     0.0    0.01    0.00 86352580         TableInitTable [67]
	-----------------------------------------------
					0.01    0.00       4/4           ExpressionAssign [66]
	[68]     0.0    0.01    0.00       4         ExpressionAssignToPointer [68]
	-----------------------------------------------
					0.00    0.01       1/1           main [1]
	[69]     0.0    0.00    0.01       1         PicocCleanup [69]
					0.01    0.00       1/1           VariableCleanup [70]
					0.00    0.00       1/1           DebugCleanup [136]
					0.00    0.00       1/1           IncludeCleanup [139]
					0.00    0.00       1/1           ParseCleanup [143]
					0.00    0.00       1/1           LexCleanup [141]
					0.00    0.00       1/1           TypeCleanup [150]
					0.00    0.00       1/1           TableStrFree [149]
					0.00    0.00       1/1           HeapCleanup [137]
					0.00    0.00       1/1           PlatformCleanup [144]
	-----------------------------------------------
					0.01    0.00       1/1           PicocCleanup [69]
	[70]     0.0    0.01    0.00       1         VariableCleanup [70]
					0.00    0.00       2/5           VariableTableCleanup [131]
	-----------------------------------------------
													 <spontaneous>
	[71]     0.0    0.01    0.00                 memcpy [71]
	-----------------------------------------------
													 <spontaneous>
	[72]     0.0    0.01    0.00                 memset [72]
	-----------------------------------------------
									   4             ParseStatement <cycle 1> [15]
	[73]     0.0    0.00    0.01       4         IncludeFile <cycle 1> [73]
					0.00    0.00       1/1           StdioSetupFunc [77]
					0.00    0.00       1/1           MathSetupFunc [78]
					0.00    0.00       1/1           StdTimeSetupFunc [82]
					0.00    0.00       1/1           StdlibSetupFunc [83]
					0.00    0.00       4/30028       VariableDefine [51]
					0.00    0.00       4/15701578     VariableDefined [46]
									   4             LibraryAdd <cycle 1> [42]
									   2             PicocParse <cycle 1> [79]
	-----------------------------------------------
					0.00    0.00       1/10007       ExpressionInfixOperator [9]
					0.00    0.00   10006/10007       ExpressionParseFunctionCall <cycle 1> [47]
	[74]     0.0    0.01    0.00   10007         ExpressionStackPushValueByType [74]
					0.00    0.00   10007/44530472     VariableAllocValueFromType [17]
					0.00    0.00   10007/104662137     ExpressionStackPushValueNode [16]
	-----------------------------------------------
					0.01    0.00   10001/10001       ExpressionParseFunctionCall <cycle 1> [47]
	[75]     0.0    0.01    0.00   10001         VariableStackFrameAdd [75]
					0.00    0.00   10001/253914706     HeapAllocStack [19]
					0.00    0.00   10001/170203922     ParserCopy [34]
					0.00    0.00   10001/86352580     TableInitTable [67]
					0.00    0.00   10001/20007       HeapPushStackFrame [115]
	-----------------------------------------------
													 <spontaneous>
	[76]     0.0    0.01    0.00                 VariableDefinedAndOutOfScope [76]
	-----------------------------------------------
					0.00    0.00       1/1           IncludeFile <cycle 1> [73]
	[77]     0.0    0.00    0.00       1         StdioSetupFunc [77]
					0.00    0.00      14/36          VariableDefinePlatformVar [65]
					0.00    0.00       2/3           TypeCreateOpaqueStruct [104]
					0.00    0.00       1/15701578     VariableDefined [46]
					0.00    0.00       1/119         TypeGetMatching [100]
					0.00    0.00       3/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00       1/1           IncludeFile <cycle 1> [73]
	[78]     0.0    0.00    0.00       1         MathSetupFunc [78]
					0.00    0.00      13/36          VariableDefinePlatformVar [65]
	-----------------------------------------------
									   2             IncludeFile <cycle 1> [73]
					0.81    4.32       1/2           PicocCallMain [5]
					0.81    4.32       1/2           PicocPlatformScanFile [6]
	[79]     0.0    0.00    0.00       4         PicocParse <cycle 1> [79]
					0.00    0.00       4/101         LexAnalyse [44]
					0.00    0.00       4/101         LexInitParser [59]
					0.00    0.00       4/140         TableStrRegister [123]
					0.00    0.00       3/689         HeapFreeMem [117]
					0.00    0.00       1/688         HeapAllocMem [118]
									  15             ParseStatement <cycle 1> [15]
	-----------------------------------------------
					0.00    0.00       1/1           main [1]
	[80]     0.0    0.00    0.00       1         PicocInitialise [80]
					0.00    0.00       1/1           LibraryInit [81]
					0.00    0.00       1/1           LexInit [89]
					0.00    0.00       1/1           TypeInit [103]
					0.00    0.00       1/1           VariableInit [108]
					0.00    0.00       1/1           DebugInit [110]
					0.00    0.00       1/633         TableInit [109]
					0.00    0.00       1/1           PlatformInit [145]
					0.00    0.00       1/1           BasicIOInit [135]
					0.00    0.00       1/1           HeapInit [138]
					0.00    0.00       1/1           IncludeInit [140]
					0.00    0.00       1/1           PlatformLibraryInit [146]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[81]     0.0    0.00    0.00       1         LibraryInit [81]
					0.00    0.00       3/36          VariableDefinePlatformVar [65]
					0.00    0.00       1/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00       1/1           IncludeFile <cycle 1> [73]
	[82]     0.0    0.00    0.00       1         StdTimeSetupFunc [82]
					0.00    0.00       2/36          VariableDefinePlatformVar [65]
					0.00    0.00       1/3           TypeCreateOpaqueStruct [104]
					0.00    0.00       1/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00       1/1           IncludeFile <cycle 1> [73]
	[83]     0.0    0.00    0.00       1         StdlibSetupFunc [83]
					0.00    0.00       1/36          VariableDefinePlatformVar [65]
					0.00    0.00       1/15701578     VariableDefined [46]
					0.00    0.00       1/140         TableStrRegister [123]
	-----------------------------------------------
									   2             ParseDeclaration <cycle 1> [63]
									  97             LibraryAdd <cycle 1> [42]
	[84]     0.0    0.00    0.00      99         ParseFunctionDefinition <cycle 1> [84]
					0.00    0.00     157/260         TypeParse [85]
					0.00    0.00      99/30209       TableSet [52]
					0.00    0.00     546/235586930     LexGetToken [8]
					0.00    0.00      99/99          ParseCountParams [94]
					0.00    0.00      99/49863651     VariableAllocValueAndData [18]
					0.00    0.00     101/170203922     ParserCopy [34]
					0.00    0.00       2/2           LexCopyTokens [105]
					0.00    0.00       2/86312362     TableGet [26]
									   2             ParseStatementMaybeRun <cycle 1> [113]
	-----------------------------------------------
					0.00    0.00       2/260         ExpressionParse <cycle 1> [3]
					0.00    0.00       4/260         ParseTypedef [91]
					0.00    0.00      97/260         LibraryAdd <cycle 1> [42]
					0.00    0.00     157/260         ParseFunctionDefinition <cycle 1> [84]
	[85]     0.0    0.00    0.00     260         TypeParse [85]
					0.00    0.00     260/10277       TypeParseFront [64]
					0.00    0.00     260/10297       TypeParseIdentPart [86]
	-----------------------------------------------
					0.00    0.00     260/10297       TypeParse [85]
					0.00    0.00   10037/10297       ParseDeclaration <cycle 1> [63]
	[86]     0.0    0.00    0.00   10297         TypeParseIdentPart [86]
					0.00    0.00   10144/10144       TypeParseBack [87]
					0.00    0.00   10405/235586930     LexGetToken [8]
					0.00    0.00   10558/170203922     ParserCopy [34]
					0.00    0.00     108/119         TypeGetMatching [100]
	-----------------------------------------------
					0.00    0.00   10144/10144       TypeParseIdentPart [86]
	[87]     0.0    0.00    0.00   10144         TypeParseBack [87]
					0.00    0.00   10144/235586930     LexGetToken [8]
					0.00    0.00   20288/170203922     ParserCopy [34]
	-----------------------------------------------
					0.00    0.00   10017/10017       ParseDeclaration <cycle 1> [63]
	[88]     0.0    0.00    0.00   10017         VariableDefineButIgnoreIdentical [88]
					0.00    0.00   10017/86312362     TableGet [26]
					0.00    0.00      18/30028       VariableDefine [51]
					0.00    0.00   10017/10017       TypeIsForwardDeclared [116]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[89]     0.0    0.00    0.00       1         LexInit [89]
					0.00    0.00      39/30209       TableSet [52]
					0.00    0.00       1/86352580     TableInitTable [67]
					0.00    0.00      39/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00   10001/10001       ExpressionParseFunctionCall <cycle 1> [47]
	[90]     0.0    0.00    0.00   10001         VariableStackFramePop [90]
					0.00    0.00   10001/170203922     ParserCopy [34]
					0.00    0.00   10001/20007       HeapPopStackFrame [114]
	-----------------------------------------------
					0.00    0.00       4/4           ParseStatement <cycle 1> [15]
	[91]     0.0    0.00    0.00       4         ParseTypedef [91]
					0.00    0.00       4/30028       VariableDefine [51]
					0.00    0.00       4/260         TypeParse [85]
	-----------------------------------------------
					0.00    0.00       7/7           LexScanGetToken [58]
	[92]     0.0    0.00    0.00       7         LexGetStringConstant [92]
					0.00    0.00       7/7           VariableStringLiteralDefine [93]
					0.00    0.00       7/49863651     VariableAllocValueAndData [18]
					0.00    0.00       7/7           VariableStringLiteralGet [102]
					0.00    0.00       7/253914706     HeapAllocStack [19]
					0.00    0.00       7/167448166     HeapPopStack [27]
					0.00    0.00     101/101         LexUnEscapeCharacter [124]
					0.00    0.00       7/632         TableStrRegister2 [121]
	-----------------------------------------------
					0.00    0.00       7/7           LexGetStringConstant [92]
	[93]     0.0    0.00    0.00       7         VariableStringLiteralDefine [93]
					0.00    0.00       7/30209       TableSet [52]
	-----------------------------------------------
					0.00    0.00      99/99          ParseFunctionDefinition <cycle 1> [84]
	[94]     0.0    0.00    0.00      99         ParseCountParams [94]
					0.00    0.00     437/235586930     LexGetToken [8]
	-----------------------------------------------
									  12             ParseDeclaration <cycle 1> [63]
	[95]     0.0    0.00    0.00      12         ParseDeclarationAssignment <cycle 1> [95]
					0.00    0.00       6/30013       ExpressionAssign [66]
					0.00    0.00      12/235586930     LexGetToken [8]
					0.00    0.00       6/18305649     VariableStackPop [36]
									  12             ExpressionParse <cycle 1> [3]
	-----------------------------------------------
					0.00    0.00     485/485         LexGetWord [97]
	[96]     0.0    0.00    0.00     485         LexCheckReservedWord [96]
					0.00    0.00     485/86312362     TableGet [26]
	-----------------------------------------------
					0.00    0.00     485/485         LexScanGetToken [58]
	[97]     0.0    0.00    0.00     485         LexGetWord [97]
					0.00    0.00     485/485         LexCheckReservedWord [96]
					0.00    0.00     485/632         TableStrRegister2 [121]
	-----------------------------------------------
					0.00    0.00       7/7           TypeParseFront [64]
	[98]     0.0    0.00    0.00       7         TypeParseStruct [98]
					0.00    0.00      28/235586930     LexGetToken [8]
					0.00    0.00       7/119         TypeGetMatching [100]
	-----------------------------------------------
					0.00    0.00       4/11          TypeInit [103]
					0.00    0.00       7/11          TypeGetMatching [100]
	[99]     0.0    0.00    0.00      11         TypeAdd [99]
					0.00    0.00      11/253894946     VariableAlloc [11]
	-----------------------------------------------
					0.00    0.00       1/119         StdioSetupFunc [77]
					0.00    0.00       3/119         TypeCreateOpaqueStruct [104]
					0.00    0.00       7/119         TypeParseStruct [98]
					0.00    0.00     108/119         TypeParseIdentPart [86]
	[100]    0.0    0.00    0.00     119         TypeGetMatching [100]
					0.00    0.00       7/11          TypeAdd [99]
	-----------------------------------------------
					0.00    0.00       1/1           ExpressionStackCollapse [7]
	[101]    0.0    0.00    0.00       1         ExpressionPrefixOperator [101]
					0.00    0.00       1/36570275     ExpressionPushFP [14]
					0.00    0.00       1/300957306     debugf [43]
	-----------------------------------------------
					0.00    0.00       7/7           LexGetStringConstant [92]
	[102]    0.0    0.00    0.00       7         VariableStringLiteralGet [102]
					0.00    0.00       7/86312362     TableGet [26]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[103]    0.0    0.00    0.00       1         TypeInit [103]
					0.00    0.00       4/11          TypeAdd [99]
					0.00    0.00      14/14          TypeAddBaseType [128]
	-----------------------------------------------
					0.00    0.00       1/3           StdTimeSetupFunc [82]
					0.00    0.00       2/3           StdioSetupFunc [77]
	[104]    0.0    0.00    0.00       3         TypeCreateOpaqueStruct [104]
					0.00    0.00       3/253894946     VariableAlloc [11]
					0.00    0.00       3/119         TypeGetMatching [100]
					0.00    0.00       3/86352580     TableInitTable [67]
	-----------------------------------------------
					0.00    0.00       2/2           ParseFunctionDefinition <cycle 1> [84]
	[105]    0.0    0.00    0.00       2         LexCopyTokens [105]
					0.00    0.00       2/253894946     VariableAlloc [11]
	-----------------------------------------------
					0.00    0.00       3/3           StdioPrintf [107]
	[106]    0.0    0.00    0.00       3         StdioBasePrintf [106]
					0.00    0.00       3/86356488     TypeStackSizeValue [32]
					0.00    0.00      65/65          StdioOutPutc [125]
					0.00    0.00       2/2           ExpressionCoerceUnsignedInteger [132]
					0.00    0.00       2/2           StdioFprintfWord [134]
					0.00    0.00       1/5           ExpressionCoerceFP [130]
					0.00    0.00       1/1           StdioFprintfFP [148]
	-----------------------------------------------
					0.00    0.00       3/3           ExpressionParseFunctionCall <cycle 1> [47]
	[107]    0.0    0.00    0.00       3         StdioPrintf [107]
					0.00    0.00       3/3           StdioBasePrintf [106]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[108]    0.0    0.00    0.00       1         VariableInit [108]
					0.00    0.00       2/86352580     TableInitTable [67]
	-----------------------------------------------
					0.00    0.00       1/633         PicocInitialise [80]
					0.00    0.00     632/633         TableSearchIdentifier [111]
	[109]    0.0    0.00    0.00     633         TableInit [109]
					0.00    0.00       1/86352580     TableInitTable [67]
					0.00    0.00       1/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[110]    0.0    0.00    0.00       1         DebugInit [110]
					0.00    0.00       1/86352580     TableInitTable [67]
	-----------------------------------------------
													 <spontaneous>
	[111]    0.0    0.00    0.00                 TableSearchIdentifier [111]
					0.00    0.00     632/633         TableInit [109]
	-----------------------------------------------
									   2             ParseFunctionDefinition <cycle 1> [84]
								   20208             ParseFor <cycle 1> [33]
								 2601449             ParseStatement <cycle 1> [15]
	[113]    0.0    0.00    0.00 2621659         ParseStatementMaybeRun <cycle 1> [113]
								 2621659             ParseStatement <cycle 1> [15]
	-----------------------------------------------
					0.00    0.00   10001/20007       VariableStackFramePop [90]
					0.00    0.00   10006/20007       ExpressionParseFunctionCall <cycle 1> [47]
	[114]    0.0    0.00    0.00   20007         HeapPopStackFrame [114]
	-----------------------------------------------
					0.00    0.00   10001/20007       VariableStackFrameAdd [75]
					0.00    0.00   10006/20007       ExpressionParseFunctionCall <cycle 1> [47]
	[115]    0.0    0.00    0.00   20007         HeapPushStackFrame [115]
	-----------------------------------------------
					0.00    0.00   10017/10017       VariableDefineButIgnoreIdentical [88]
	[116]    0.0    0.00    0.00   10017         TypeIsForwardDeclared [116]
	-----------------------------------------------
					0.00    0.00       3/689         ParseCleanup [143]
					0.00    0.00       3/689         PicocParse <cycle 1> [79]
					0.00    0.00       9/689         IncludeCleanup [139]
					0.00    0.00      14/689         TypeCleanupNode [151]
					0.00    0.00      39/689         TableDelete [119]
					0.00    0.00      97/689         LibraryAdd <cycle 1> [42]
					0.00    0.00     150/689         VariableTableCleanup [131]
					0.00    0.00     152/689         VariableFree [122]
					0.00    0.00     222/689         TableStrFree [149]
	[117]    0.0    0.00    0.00     689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00       1/688         PicocParse <cycle 1> [79]
					0.00    0.00       9/688         IncludeRegister [129]
					0.00    0.00     101/688         LexTokenise [45]
					0.00    0.00     222/688         TableSetIdentifier [120]
					0.00    0.00     355/688         VariableAlloc [11]
	[118]    0.0    0.00    0.00     688         HeapAllocMem [118]
	-----------------------------------------------
					0.00    0.00      39/671         LexCleanup [141]
					0.00    0.00     632/671         TableSetIdentifier [120]
	[119]    0.0    0.00    0.00     671         TableDelete [119]
					0.00    0.00      39/689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00     632/632         TableStrRegister2 [121]
	[120]    0.0    0.00    0.00     632         TableSetIdentifier [120]
					0.00    0.00     632/671         TableDelete [119]
					0.00    0.00     222/688         HeapAllocMem [118]
	-----------------------------------------------
					0.00    0.00       7/632         LexGetStringConstant [92]
					0.00    0.00     140/632         TableStrRegister [123]
					0.00    0.00     485/632         LexGetWord [97]
	[121]    0.0    0.00    0.00     632         TableStrRegister2 [121]
					0.00    0.00     632/632         TableSetIdentifier [120]
	-----------------------------------------------
					0.00    0.00     150/150         VariableTableCleanup [131]
	[122]    0.0    0.00    0.00     150         VariableFree [122]
					0.00    0.00     152/689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00       1/140         TableInit [109]
					0.00    0.00       1/140         LibraryInit [81]
					0.00    0.00       1/140         StdlibSetupFunc [83]
					0.00    0.00       1/140         StdTimeSetupFunc [82]
					0.00    0.00       2/140         PicocCallMain [5]
					0.00    0.00       3/140         StdioSetupFunc [77]
					0.00    0.00       4/140         PicocParse <cycle 1> [79]
					0.00    0.00       4/140         LibraryAdd <cycle 1> [42]
					0.00    0.00       9/140         IncludeRegister [129]
					0.00    0.00      36/140         VariableDefinePlatformVar [65]
					0.00    0.00      39/140         LexInit [89]
					0.00    0.00      39/140         LexCleanup [141]
	[123]    0.0    0.00    0.00     140         TableStrRegister [123]
					0.00    0.00     140/632         TableStrRegister2 [121]
	-----------------------------------------------
					0.00    0.00     101/101         LexGetStringConstant [92]
	[124]    0.0    0.00    0.00     101         LexUnEscapeCharacter [124]
	-----------------------------------------------
					0.00    0.00      65/65          StdioBasePrintf [106]
	[125]    0.0    0.00    0.00      65         StdioOutPutc [125]
	-----------------------------------------------
					0.00    0.00      21/21          LexScanGetToken [58]
	[126]    0.0    0.00    0.00      21         LexGetNumber [126]
	-----------------------------------------------
					0.00    0.00      14/14          LexScanGetToken [58]
	[127]    0.0    0.00    0.00      14         LexSkipComment [127]
	-----------------------------------------------
					0.00    0.00      14/14          TypeInit [103]
	[128]    0.0    0.00    0.00      14         TypeAddBaseType [128]
	-----------------------------------------------
					0.00    0.00       1/9           PlatformLibraryInit [146]
					0.00    0.00       8/9           IncludeInit [140]
	[129]    0.0    0.00    0.00       9         IncludeRegister [129]
					0.00    0.00       9/688         HeapAllocMem [118]
					0.00    0.00       9/140         TableStrRegister [123]
	-----------------------------------------------
					0.00    0.00       1/5           StdioBasePrintf [106]
					0.00    0.00       4/5           ExpressionAssign [66]
	[130]    0.0    0.00    0.00       5         ExpressionCoerceFP [130]
	-----------------------------------------------
					0.00    0.00       2/5           VariableCleanup [70]
					0.00    0.00       3/5           TypeCleanupNode [151]
	[131]    0.0    0.00    0.00       5         VariableTableCleanup [131]
					0.00    0.00     150/150         VariableFree [122]
					0.00    0.00     150/689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00       2/2           StdioBasePrintf [106]
	[132]    0.0    0.00    0.00       2         ExpressionCoerceUnsignedInteger [132]
	-----------------------------------------------
					0.00    0.00       2/2           ExpressionParseFunctionCall <cycle 1> [47]
	[133]    0.0    0.00    0.00       2         StdClock [133]
	-----------------------------------------------
					0.00    0.00       2/2           StdioBasePrintf [106]
	[134]    0.0    0.00    0.00       2         StdioFprintfWord [134]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[135]    0.0    0.00    0.00       1         BasicIOInit [135]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[136]    0.0    0.00    0.00       1         DebugCleanup [136]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[137]    0.0    0.00    0.00       1         HeapCleanup [137]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[138]    0.0    0.00    0.00       1         HeapInit [138]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[139]    0.0    0.00    0.00       1         IncludeCleanup [139]
					0.00    0.00       9/689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[140]    0.0    0.00    0.00       1         IncludeInit [140]
					0.00    0.00       8/9           IncludeRegister [129]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[141]    0.0    0.00    0.00       1         LexCleanup [141]
					0.00    0.00      39/140         TableStrRegister [123]
					0.00    0.00      39/671         TableDelete [119]
					0.00    0.00       1/1           LexInteractiveClear [142]
	-----------------------------------------------
					0.00    0.00       1/1           LexCleanup [141]
	[142]    0.0    0.00    0.00       1         LexInteractiveClear [142]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[143]    0.0    0.00    0.00       1         ParseCleanup [143]
					0.00    0.00       3/689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[144]    0.0    0.00    0.00       1         PlatformCleanup [144]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[145]    0.0    0.00    0.00       1         PlatformInit [145]
	-----------------------------------------------
					0.00    0.00       1/1           PicocInitialise [80]
	[146]    0.0    0.00    0.00       1         PlatformLibraryInit [146]
					0.00    0.00       1/9           IncludeRegister [129]
	-----------------------------------------------
					0.00    0.00       1/1           PicocPlatformScanFile [6]
	[147]    0.0    0.00    0.00       1         PlatformReadFile [147]
	-----------------------------------------------
					0.00    0.00       1/1           StdioBasePrintf [106]
	[148]    0.0    0.00    0.00       1         StdioFprintfFP [148]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[149]    0.0    0.00    0.00       1         TableStrFree [149]
					0.00    0.00     222/689         HeapFreeMem [117]
	-----------------------------------------------
					0.00    0.00       1/1           PicocCleanup [69]
	[150]    0.0    0.00    0.00       1         TypeCleanup [150]
					0.00    0.00       1/1           TypeCleanupNode [151]
	-----------------------------------------------
									  25             TypeCleanupNode [151]
					0.00    0.00       1/1           TypeCleanup [150]
	[151]    0.0    0.00    0.00       1+25      TypeCleanupNode [151]
					0.00    0.00      14/689         HeapFreeMem [117]
					0.00    0.00       3/5           VariableTableCleanup [131]
									  25             TypeCleanupNode [151]
	-----------------------------------------------

This table describes the call tree of the program, and was sorted by the total amount of time spent in each function and its children.

Each entry in this table consists of several lines. The line with the index number at the left hand margin lists the current function. The lines above it list the functions that called this function, and the lines below it list the functions this one called. This line lists: index A unique number given to each element of the table. Index numbers are sorted numerically. The index number is printed next to every function name so it is easier to look up where the function is in the table.

 % time	This is the percentage of the `total' time that was spent
	in this function and its children.  Note that due to
	different viewpoints, functions excluded by options, etc,
	these numbers will NOT add up to 100%.

 self	This is the total amount of time spent in this function.

 children	This is the total amount of time propagated into this
	function by its children.

 called	This is the number of times the function was called.
	If the function called itself recursively, the number
	only includes non-recursive calls, and is followed by
	a `+' and the number of recursive calls.

 name	The name of the current function.  The index number is
	printed after it.  If the function is a member of a
	cycle, the cycle number is printed between the
	function's name and the index number.

For the function's parents, the fields have the following meanings:

 self	This is the amount of time that was propagated directly
	from the function into this parent.

 children	This is the amount of time that was propagated from
	the function's children into this parent.

 called	This is the number of times this parent called the
	function `/' the total number of times the function
	was called.  Recursive calls to the function are not
	included in the number after the `/'.

 name	This is the name of the parent.  The parent's index
	number is printed after it.  If the parent is a
	member of a cycle, the cycle number is printed between
	the name and the index number.

If the parents of the function cannot be determined, the word <spontaneous>' is printed in the name' field, and all the other fields are blank.

For the function's children, the fields have the following meanings:

 self	This is the amount of time that was propagated directly
	from the child into the function.

 children	This is the amount of time that was propagated from the
	child's children to the function.

 called	This is the number of times the function called
	this child `/' the total number of times the child
	was called.  Recursive calls by the child are not
	listed in the number after the `/'.

 name	This is the name of the child.  The child's index
	number is printed after it.  If the child is a
	member of a cycle, the cycle number is printed
	between the name and the index number.

If there are any cycles (circles) in the call graph, there is an entry for the cycle-as-a-whole. This entry shows who called the cycle (as parents) and the members of the cycle (as children.) The `+' recursive calls entry shows the number of function calls that were internal to the cycle, and the calls entry for each member shows, for that member, how many times it was called from other members of the cycle.

Copyright (C) 2012-2014 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

Index by function name

	 [135] BasicIOInit            [89] LexInit               [123] TableStrRegister
	  [49] DebugCheckStatement    [59] LexInitParser         [121] TableStrRegister2
	 [136] DebugCleanup          [142] LexInteractiveClear    [99] TypeAdd
	 [110] DebugInit              [56] LexRawPeekToken       [128] TypeAddBaseType
	  [66] ExpressionAssign       [58] LexScanGetToken       [150] TypeCleanup
	  [53] ExpressionAssignFP    [127] LexSkipComment        [151] TypeCleanupNode
	  [62] ExpressionAssignInt    [28] LexTokenSize          [104] TypeCreateOpaqueStruct
	  [68] ExpressionAssignToPointer [45] LexTokenise        [100] TypeGetMatching
	 [130] ExpressionCoerceFP    [124] LexUnEscapeCharacter  [103] TypeInit
	  [55] ExpressionCoerceInteger [42] LibraryAdd           [116] TypeIsForwardDeclared
	 [132] ExpressionCoerceUnsignedInteger [81] LibraryInit   [85] TypeParse
	   [9] ExpressionInfixOperator [78] MathSetupFunc         [87] TypeParseBack
	   [3] ExpressionParse        [23] ParseBlock             [64] TypeParseFront
	  [47] ExpressionParseFunctionCall [143] ParseCleanup     [86] TypeParseIdentPart
	  [48] ExpressionParseInt     [94] ParseCountParams       [98] TypeParseStruct
	  [41] ExpressionPostfixOperator [63] ParseDeclaration    [50] TypeSize
	 [101] ExpressionPrefixOperator [95] ParseDeclarationAssignment [38] TypeSizeValue
	  [14] ExpressionPushFP       [33] ParseFor               [32] TypeStackSizeValue
	  [29] ExpressionPushInt      [84] ParseFunctionDefinition [11] VariableAlloc
	   [7] ExpressionStackCollapse [15] ParseStatement        [37] VariableAllocValueAndCopy
	  [13] ExpressionStackPushLValue [113] ParseStatementMaybeRun [18] VariableAllocValueAndData
	  [22] ExpressionStackPushOperator [91] ParseTypedef      [21] VariableAllocValueFromExistingData
	  [31] ExpressionStackPushValue [34] ParserCopy           [17] VariableAllocValueFromType
	  [74] ExpressionStackPushValueByType [39] ParserCopyPos  [20] VariableAllocValueShared
	  [16] ExpressionStackPushValueNode [5] PicocCallMain     [70] VariableCleanup
	 [118] HeapAllocMem           [69] PicocCleanup           [51] VariableDefine
	  [19] HeapAllocStack         [80] PicocInitialise        [88] VariableDefineButIgnoreIdentical
	 [137] HeapCleanup            [79] PicocParse             [65] VariableDefinePlatformVar
	 [117] HeapFreeMem             [6] PicocPlatformScanFile  [46] VariableDefined
	 [138] HeapInit              [144] PlatformCleanup        [76] VariableDefinedAndOutOfScope
	  [27] HeapPopStack          [145] PlatformInit          [122] VariableFree
	 [114] HeapPopStackFrame     [146] PlatformLibraryInit    [24] VariableGet
	 [115] HeapPushStackFrame    [147] PlatformReadFile      [108] VariableInit
	  [54] HeapUnpopStack        [133] StdClock               [57] VariableRealloc
	 [139] IncludeCleanup         [82] StdTimeSetupFunc       [35] VariableScopeBegin
	  [73] IncludeFile           [106] StdioBasePrintf        [30] VariableScopeEnd
	 [140] IncludeInit           [148] StdioFprintfFP         [75] VariableStackFrameAdd
	 [129] IncludeRegister       [134] StdioFprintfWord       [90] VariableStackFramePop
	  [40] IsTypeToken           [125] StdioOutPutc           [36] VariableStackPop
	  [44] LexAnalyse            [107] StdioPrintf            [93] VariableStringLiteralDefine
	  [96] LexCheckReservedWord   [77] StdioSetupFunc        [102] VariableStringLiteralGet
	 [141] LexCleanup             [83] StdlibSetupFunc       [131] VariableTableCleanup
	 [105] LexCopyTokens         [119] TableDelete            [25] _fentry__
	 [126] LexGetNumber           [26] TableGet                [4] _mcount_private
	  [10] LexGetRawToken        [109] TableInit              [43] debugf
	  [92] LexGetStringConstant   [67] TableInitTable         [71] memcpy
	   [8] LexGetToken            [12] TableSearch            [72] memset
	  [97] LexGetWord             [52] TableSet                [2] <cycle 1>
	  [60] LexHashEndif          [120] TableSetIdentifier
	  [61] LexHashIncPos         [149] TableStrFree
⚠️ **GitHub.com Fallback** ⚠️