Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LLVM-DIFF(1)			     LLVM			  LLVM-DIFF(1)

NAME
       llvm-diff - LLVM	structural 'diff'

SYNOPSIS
       llvm-diff [options] module 1 module 2 [global name ...]

DESCRIPTION
       llvm-diff  compares the structure of two	LLVM modules, primarily	focus-
       ing on differences in function definitions.  Insignificant differences,
       such as changes in the ordering of globals or in	 the  names  of	 local
       values, are ignored.

       An  input  module  will	be interpreted as an assembly file if its name
       ends in '.ll';  otherwise it will be read in as a bitcode file.

       If a list of global names is given, just	the values  with  those	 names
       are  compared;  otherwise, all global values are	compared, and diagnos-
       tics are	produced for globals which only	appear in one  module  or  the
       other.

       llvm-diff  compares  two	functions by comparing their basic blocks, be-
       ginning with the	entry blocks.  If the terminators seem to match,  then
       the  corresponding successors are compared; otherwise they are ignored.
       This algorithm is very sensitive	to changes in control flow, which tend
       to stop any downstream changes from being detected.

       llvm-diff is intended as	a debugging tool for writers  of  LLVM	passes
       and frontends.  It does not have	a stable output	format.

EXIT STATUS
       If  llvm-diff  finds  no	 differences between the modules, it will exit
       with 0 and produce no output.  Otherwise	it will	exit with  a  non-zero
       value.

BUGS
       Many important differences, like	changes	in linkage or function attrib-
       utes, are not diagnosed.

       Changes	in  memory  behavior (for example, coalescing loads) can cause
       massive detected	differences in blocks.

AUTHOR
       Maintained by the LLVM Team (https://llvm.org/).

COPYRIGHT
       2003-2025, LLVM Project

18				  2025-04-13			  LLVM-DIFF(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=llvm-diff-cheriot&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help