Development questions regarding debugging and control flow I'm looking for a better understanding of how the flow of the code works. I'm running bitcoind -regtest in one terminal window, and in the other I'm using bitcoin-cli regtest generate to create blocks. What I'm having trouble with is understanding exactly what is happening in the code when I'm creating blocks. 

My assumption was that blockencodings.cpp was used for that, so I put a print statement in it, but nothing ever prints to the console. Is there some issue with printing to the console when regtesting? Or am I not understanding the control flow here. Just looking for some help understanding either debugging, or the chain of functions when generating a block.
You want to look at miner.cpp, and perhaps at rpc/mining.cpp for the generate function that's exposed to RPC.

blockencodings.cpp is pretty much only used for the compact blocks P2P format specified by BIP152, and has nothing to do with normal block generation.