when did llvm/clang CFI generate the jump table for indirect call?

Hi

I study Control Flow Integrity(CFI) in LLVM/Clang

Address of the targets of indirect call/virtual call would be decided when the program loads

So, I wonder that why can CFI generate the jump table ?

thanks