Yes, nvcc
is a compiler driver which separates the host and device code. The host code is passed directly to the host compiler (cl.exe
in the case of microsoft windows), and optimization of host code is handled by the host compiler.
The nvcc documentation covers this compilation flow, and also indicates how to pass flags to the host compiler.