86 lines · plain
1llvm-tli-checker - TargetLibraryInfo vs library checker2=======================================================3 4.. program:: llvm-tli-checker5 6SYNOPSIS7--------8 9:program:`llvm-tli-checker` [*options*] [*library-file...*]10 11DESCRIPTION12-----------13 14:program:`llvm-tli-checker` compares TargetLibraryInfo's opinion of the15availability of library functions against the set of functions exported16by the specified library files, reporting any disagreements between TLI's17opinion and whether the function is actually present. This is primarily18useful for vendors to ensure the TLI for their target is correct, and19the compiler will not "optimize" some code sequence into a library call20that is not actually available.21 22EXAMPLE23-------24 25.. code-block:: console26 27 $ llvm-tli-checker --triple x86_64-scei-ps4 example.so28 TLI knows 466 symbols, 235 available for 'x86_64-scei-ps4'29 30 Looking for symbols in 'example.so'31 Found 235 global function symbols in 'example.so'32 Found a grand total of 235 library symbols33 << TLI yes SDK no: '_ZdaPv' aka operator delete[](void*)34 >> TLI no SDK yes: '_ZdaPvj' aka operator delete[](void*, unsigned int)35 << Total TLI yes SDK no: 136 >> Total TLI no SDK yes: 137 == Total TLI yes SDK yes: 23438 FAIL: LLVM TLI doesn't match SDK libraries.39 40OPTIONS41-------42 43.. option:: --dump-tli44 45 Print "available"/"not available" for each library function, according to46 TargetLibraryInfo's information for the specified triple, and exit. This47 option does not read any input files.48 49.. option:: --help, -h50 51 Print a summary of command line options and exit.52 53.. option:: --libdir=<directory>54 55 A base directory to prepend to each library file path. This is handy56 when there are a number of library files all in the same directory, or57 a list of input filenames are kept in a response file.58 59.. option:: --report=<level>60 61 The amount of information to report. <level> can be summary, discrepancy,62 or full. A summary report gives only the count of matching and mis-matching63 symbols; discrepancy lists the mis-matching symbols; and full lists all64 symbols known to TLI, matching or mis-matching. The default is discrepancy.65 66.. option:: --separate67 68 Read and report a summary for each library file separately. This can be69 useful to identify library files that don't contribute anything that TLI70 knows about. Implies --report=summary (can be overridden).71 72.. option:: --triple=<triple>73 74 The triple to use for initializing TargetLibraryInfo.75 76.. option:: @<FILE>77 78 Read command-line options and/or library names from response file `<FILE>`.79 80EXIT STATUS81-----------82 83:program:`llvm-tli-checker` returns 0 even if there are mismatches. It returns a84non-zero exit code if there is an unrecognized option, or no input files are85provided.86