My compiler recently slowed down and I'm trying to figure out the source
of it. I recently added a bit more of the target language to the build
process, so more IR is generated (not a lot mind you).
I ran `valgrind/callgrind` on my compiler and the results were not what
I expected. Instead of seeing my code I saw primarily LLVM code. Even
more strange is that it's mainly in the `findAnalysisPass`.
The top functions, in terms of inclusive time are:
94.8% <cycle_3> (no function name, but inside llvm3-8.so)
What I find even strange here is that I'm not adding any optimization
passes in this particular mode. My object file emitter is setup as:
bool ret = machine->addPassesToEmitFile( fpm, out.os(),
STATE_CHECK( !ret );
module->setDataLayout( machine->createDataLayout() );
fpm.run( *module );
Am I doing something wrong? Are these numbers from valgrind realistic,
or has it gotten confused somehow?