How to use dynamic library libLTO.so?

I’m learning something about LTO,libLTO.so is mentioned in the following article,but when I use ld.lld and ld.gold,all of them do not use libLTO.so, I want know where is this dynamic library used.

command and code are as follows:
// use ld.gold
clang a.c -flto -c
clang b.c -flto -c
clang -flto a.o b.o -o main -fuse-ld=gold
or
// use ld.lld
clang a.c -flto -c
clang b.c -flto -c
clang -flto a.o b.o -o main -fuse-ld=gold

// ----- a.c —
#include <stdio.h>

extern void foo1(void);
extern void foo4(void);

void foo2(void) {
printf(“Foo2\n”);
}

void foo3(void) {
foo4();
}

int main(void) {
foo1();
}

// — b.c —
#include <stdio.h>

extern void foo2(void);

void foo1(void) {
foo2();
}

void foo4(void) {
printf(“Foo4”);
}
https://llvm.org/docs/LinkTimeOptimization.html#phase-1-read-llvm-bitcode-files