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

FreeBSD Manual Pages

  
 
  

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

NAME
     llvm-size - print size information

SYNOPSIS
     llvm-size [options] [input...]

DESCRIPTION
     llvm-size	is  a tool that prints size information for binary files.  It is
     intended to be a drop-in replacement for GNU's size.

     The tool prints size information for each input specified. If no  input  is
     specified,  the program prints size information for a.out. If "-" is speci-
     fied as an input file, llvm-size reads  a	file  from  the  standard  input
     stream.  If  an input is an archive, size information will be displayed for
     all its members.

OPTIONS
     -A     Equivalent to --format with a value of sysv.

     --arch=<arch>
	    Architecture(s) from Mach-O universal binaries to  display	informa-
	    tion for.

     -B     Equivalent to --format with a value of berkeley.

     --common
	    Include ELF common symbol sizes in bss size for berkeley output for-
	    mat,  or  as a separate section entry for sysv output. If not speci-
	    fied, these symbols are ignored.

     -d     Equivalent to --radix with a value of 10.

     -l     Display verbose address and offset information for segments and sec-
	    tions in Mach-O files in darwin format.

     --format=<format>
	    Set the output format to the <format> specified. Available	<format>
	    options are berkeley (the default), sysv and darwin.

	    Berkeley output summarises text, data and bss sizes in each file, as
	    shown below for a typical pair of ELF files:

	       $ llvm-size --format=berkeley test.o test2.o
		  text	  data	   bss	   dec	   hex filename
		   182	    16	     5	   203	    cb test.elf
		    82	     8	     1	    91	    5b test2.o

	    For Mach-O files, the output format is slightly different:

	       $ llvm-size --format=berkeley macho.obj macho2.obj
	       __TEXT  __DATA  __OBJC  others  dec     hex
	       4       8       0       0       12      c       macho.obj
	       16      32      0       0       48      30      macho2.obj

	    Sysv output displays size and address information for most sections,
	    with each file being listed separately:

	       $ llvm-size --format=sysv test.elf test2.o
		  test.elf  :
		  section	size	  addr
		  .eh_frame	  92   2097496
		  .text 	  90   2101248
		  .data 	  16   2105344
		  .bss		   5   2105360
		  .comment	 209	     0
		  Total 	 412

		  test2.o  :
		  section	      size   addr
		  .text 		26	0
		  .data 		 8	0
		  .bss			 1	0
		  .comment	       106	0
		  .note.GNU-stack	 0	0
		  .eh_frame		56	0
		  .llvm_addrsig 	 2	0
		  Total 	       199

	    darwin format only affects Mach-O input files. If an input of a dif-
	    ferent  file  format  is specified, llvm-size falls back to berkeley
	    format. When producing darwin format, the tool displays  information
	    about segments and sections:

	       $ llvm-size --format=darwin macho.obj macho2.obj
		  macho.obj:
		  Segment : 12
			  Section (__TEXT, __text): 4
			  Section (__DATA, __data): 8
			  total 12
		  total 12
		  macho2.obj:
		  Segment : 48
			  Section (__TEXT, __text): 16
			  Section (__DATA, __data): 32
			  total 48
		  total 48

     --help, -h
	    Display a summary of command line options.

     -m     Equivalent to --format with a value of darwin.

     -o     Equivalent to --radix with a value of 8.

     --radix=<value>
	    Display  size  information	in the specified radix. Permitted values
	    are 8, 10 (the default) and 16 for octal,  decimal	and  hexadecimal
	    output respectively.

	    Example:

	       $ llvm-size --radix=8 test.o
		  text	  data	   bss	   oct	   hex filename
		  0152	    04	    04	   162	    72 test.o

	       $ llvm-size --radix=10 test.o
		  text	  data	   bss	   dec	   hex filename
		   106	     4	     4	   114	    72 test.o

	       $ llvm-size --radix=16 test.o
		  text	  data	   bss	   dec	   hex filename
		  0x6a	   0x4	   0x4	   114	    72 test.o

     --totals, -t
	    Applies  only  to berkeley output format. Display the totals for all
	    listed fields, in addition to the individual file listings.

	    Example:

	       $ llvm-size --totals test.elf test2.o
		  text	  data	   bss	   dec	   hex filename
		   182	    16	     5	   203	    cb test.elf
		    82	     8	     1	    91	    5b test2.o
		   264	    24	     6	   294	   126 (TOTALS)

     --version
	    Display the version of the llvm-size executable.

     -x     Equivalent to --radix with a value of 16.

     @<FILE>
	    Read command-line options from response file <FILE>.

EXIT STATUS
     llvm-size exits with a non-zero exit code if there is an error.  Otherwise,
     it exits with code 0.

BUGS
     To 	report		bugs,	       please	       visit	      <-
     https://github.com/llvm/llvm-project/labels/tools:llvm-size/>.

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

COPYRIGHT
     2003-2026, LLVM Project

19				   2026-07-30			    LLVM-SIZE(1)

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

home | help