byte-recompile-file is an interactive compiled Lisp function in `bytecomp.el'.

(byte-recompile-file FILENAME &optional FORCE ARG LOAD)

Recompile FILENAME file if it needs recompilation.
This happens when its `.elc' file is older than itself.

If the `.elc' file exists and is up-to-date, normally this function
*does not* compile FILENAME. If the prefix argument FORCE is non-nil,
however, it compiles FILENAME even if the destination already
exists and is up-to-date.

If the `.elc' file does not exist, normally this function *does not*
compile FILENAME. If optional argument ARG is 0, it compiles
the input file even if the `.elc' file does not exist.
Any other non-nil value of ARG means to ask the user.

If optional argument LOAD is non-nil, loads the file after compiling.

If compilation is needed, this functions returns the result of
`byte-compile-file'; otherwise it returns 'no-byte-compile.