LLVM IR for 3rd Party Library

Hi,

How does clang++ generate IR for 3rd party libraries ?

let’s assume i have a cpp file with postgres cpp api calls,

if i compile the file with -S -emit-llvm flags , i get an IR file , even though the library is a 3rd party library IR is generated for it . How does it happen ?

Can somebody please explain?

Thanks

Prakash

if i compile the file with -S -emit-llvm flags , i get an IR file , even
though the library is a 3rd party library IR is generated for it . How
does it happen ?

Either the IR is generated when code for your 3rd party library is provided in source (header files), or it might be that you're only seeing interfacing code (function calls into the library) and not the full IR implementing the library functionality.

Cheers,
  Roel