The documentation for ECL suggests that
(compile-file "hello.lisp" :system-p t)
should produce a .o file however I instead get a .fasc file and the ouput
> (compile-file "hello.lisp" :system-p t)
;;; Compiling hello.lisp;;; Compiling #<input stream hello.lisp>#P"hello.fasc"
NIL
NIL