/usr/include/gap/profile.h is in gap-dev 4r8p6-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | /****************************************************************************
**
*W profile.h GAP source Chris Jefferson
**
**
*Y Copyright (C) 2014 The GAP Group
**
** This file contains profile related functionality.
**
*/
#ifndef GAP_PROFILE_H
#define GAP_PROFILE_H
#include "exprs.h"
/****************************************************************************
**
*F * * * * * * * * * * * * * initialize package * * * * * * * * * * * * * * *
*/
/****************************************************************************
**
*F InitInfoStats() . . . . . . . . . . . . . . . . . table of init functions
*/
StructInitInfo * InitInfoProfile ( void );
void RegisterStatWithProfiling(Stat);
void RegisterProfilingLineOverflowOccured();
void RegisterProfilingFileOverflowOccured();
void InstallEvalBoolFunc( Int, Obj(*)(Expr));
void InstallEvalExprFunc( Int, Obj(*)(Expr));
void InstallExecStatFunc( Int, UInt(*)(Stat));
void InstallPrintStatFunc(Int, void(*)(Stat));
void InstallPrintExprFunc(Int, void(*)(Expr));
/****************************************************************************
**
** We need this to be in the header, so it can be inlined away. The only
** functionality here which should be publicly used is 'VisitStatIfProfiling',
** 'ProfileLineByLineIntoFunction' and 'ProfileLineByLineOutFunction'.
*/
extern UInt profileState_Active;
void visitStat(Stat stat);
static inline void VisitStatIfProfiling(Stat stat)
{
if(profileState_Active)
visitStat(stat);
}
void ProfileLineByLineOutput(Obj func, char type);
static inline void ProfileLineByLineIntoFunction(Obj func)
{
if(profileState_Active)
ProfileLineByLineOutput(func, 'I');
}
static inline void ProfileLineByLineOutFunction(Obj func)
{
if(profileState_Active)
ProfileLineByLineOutput(func, 'O');
}
#endif // GAP_STATS_H
/****************************************************************************
**
*E stats.c . . . . . . . . . . . . . . . . . . . . . . . . . . . . ends here
*/
|