Sorry for my noobish question, but I have been perusing the bitcoin source code and I can not find where exactly the sha-256 pow is implemented. I can see where the hash is defined in src/hash.h, but I can't find where it's used. Thank you.
Is this what you're looking for?
main.cpp
bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, bool fCheckPOW)
{
// Check proof of work matches claimed amount
if (fCheckPOW && !CheckProofOfWork(block.GetHash(), block.nBits))
return state.DoS(50, error("CheckBlockHeader() : proof of work failed"),
REJECT_INVALID, "high-hash");