AOT is referenced at src/backend/jit/README:
That this is done at query execution time, possibly even only in
cases where the relevant task is done a number of times, makes it
JIT, rather than ahead-of-time (AOT). Given the way JIT compilation
is used in PostgreSQL, the lines between interpretation, AOT and JIT
are somewhat blurry.
In what cases does the compilation happen ahead of time?
Thanks,
Viorel