LCC Profiler

LCC Profiler

Post by free4tramp » Wed, 04 Oct 2006 06:55:16

I made several attempts a while back to use lcc-win32 profiler, but i
kept on getting the "Cant open Executable file" error. Anyways, i wrote
a C99 profiler, although it is still in development and there are lots
of bugs to fix, it may be worth looking at who ever is maintening LCC.
If you like what this profiler could eventually become, it is not even
in betta testing yet, then i'd gladly help you add it to lcc package.
source code located at:

is not the latest version, but the output html file is, so let me know
what yall think.
PS dont have high expectations, its still in early development stage.

LCC Profiler

Post by jacob navi » Wed, 04 Oct 2006 16:41:38

I have never received a bug report from you, at least that I

I have no string "Can't open executable" in wedit, at least
in the current version.

Looks good, you are doing more or less exactly what the compiler does.

The problem is the parser of the functions. I am thinking about an
interface to a profiler where the compiler would call some of your
functions at specific events (line end, function start, function end)
and you would emit character strings to be compiled "in the fly" and
added to the executable.



LCC Profiler

Post by free4tramp » Thu, 05 Oct 2006 07:00:45

Exact wording of the error message i get from lcc profiler:

impossible to start 'directory where exe file would be'

manually executing the executable file, which is build with profiler
option enabled, yeilds a file "" created in the same
directory as the executable, which is to be profiled. That file looks
like a text file which suppose to yeild profile results, but its not
very user friendly to manually read, plus i did not see any time data
in it, just the number of times each line executed. Let me know if you
decide using my profiler, ill help any way i can. Although it is in
public domain, as long as the free release of lcc provides all profiler
functionality of paid lcc release, you are welcome to use it in both.