2017-05-31 09:48:50 +00:00
|
|
|
.. _kmidiff_label:
|
|
|
|
|
|
|
|
===========
|
|
|
|
kmidiff
|
|
|
|
===========
|
|
|
|
|
|
|
|
``kmidiff`` compares the binary Kernel Module Interfaces of two Linux
|
|
|
|
Kernel trees. The binary KMI is the interface that the Linux Kernel
|
|
|
|
exposes to its modules. The trees we are interested in here are the
|
|
|
|
result of the build of the Linux Kernel source tree.
|
|
|
|
|
2017-12-11 13:30:04 +00:00
|
|
|
|
2017-05-31 09:48:50 +00:00
|
|
|
General approach
|
|
|
|
=================
|
|
|
|
|
|
|
|
And example of how to build your kernel if you want to compare it to
|
|
|
|
another one using kmidiff is: ::
|
|
|
|
|
|
|
|
git clone -b v4.5 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git linux/v4.5
|
|
|
|
cd linux/v4.5
|
|
|
|
make allyesconfig all
|
|
|
|
|
|
|
|
Then install the modules into a directory, for instance, the
|
|
|
|
build/modules sub-directory of the your kernel source tree: ::
|
|
|
|
|
|
|
|
mkdir build/modules
|
|
|
|
make modules_install INSTALL_MOD_DIR=build/modules
|
|
|
|
|
|
|
|
|
|
|
|
Then construct a list of interfaces exported by the kernel, that you
|
|
|
|
want to compare: ::
|
|
|
|
|
|
|
|
cat > kmi-whitelist << EOF
|
|
|
|
[kernel_4.5_kmi_whitelist]
|
|
|
|
init_task
|
|
|
|
schedule
|
|
|
|
dev_queue_xmit
|
|
|
|
__kmalloc
|
|
|
|
printk
|
|
|
|
EOF
|
|
|
|
|
|
|
|
Suppose you've done something similar for the v4.6 branch of the Linux
|
|
|
|
kernel, you now have these two directories: ``linux/v4.5`` and ``linux/v4.6``.
|
|
|
|
Their modules are present under the directories
|
|
|
|
``linux/v4.5/build/modules`` and ``linux/v4.6/build/modules``.
|
|
|
|
|
|
|
|
To Comparing their KMI ``kmidiff`` needs to know where to find the
|
|
|
|
vmlinux binaries and their associated modules. Here would be what the
|
|
|
|
command line looks like: ::
|
|
|
|
|
|
|
|
kmidiff \
|
|
|
|
--kmi-whitelist linux/v4.6/kmi-whitelist \
|
|
|
|
--vmlinux1 linux/v4.5/vmlinux \
|
|
|
|
--vmlinux2 linux/v4.6/vmlinux \
|
|
|
|
linux/v4.5/build/modules \
|
|
|
|
linux/v4.6/build/modules
|
|
|
|
|
|
|
|
Invocation
|
|
|
|
==========
|
|
|
|
|
|
|
|
More generally, ``kmidiff`` is invoked under the form: ::
|
|
|
|
|
|
|
|
kmidiff [options] <first-modules-dir> <second-modules-dir>
|
|
|
|
|
|
|
|
Environment
|
|
|
|
===========
|
|
|
|
|
|
|
|
By default, ``kmidiff`` compares all the interfaces (exported
|
|
|
|
functions and variables) between the Kernel and its modules. In
|
|
|
|
practice, though, users want to compare a subset of the those
|
|
|
|
interfaces.
|
|
|
|
|
|
|
|
Users can then define a "white list" of the interfaces to compare.
|
|
|
|
Such a white list is a just a file in the "INI" format that looks
|
|
|
|
like: ::
|
|
|
|
|
|
|
|
[kernel_version_x86_64_whitelist]
|
|
|
|
function1_name
|
|
|
|
function2_name
|
|
|
|
global_variable1_name
|
|
|
|
....
|
|
|
|
|
|
|
|
|
|
|
|
Note that the name of the section (the name that is between the two
|
|
|
|
brackets) of that INI file just has to end with the string
|
|
|
|
"whitelist". So you can define the name you want, for instance
|
|
|
|
``[kernel_46_x86_64_whitelist]``.
|
|
|
|
|
|
|
|
Then each line of that whitelist file is the name of an exported
|
|
|
|
function or variable. Only those interfaces along with the types
|
|
|
|
reachable from their signatures are going to be compared by
|
|
|
|
``kmidiff`` recursively.
|
|
|
|
|
|
|
|
Note that kmidiff compares the interfaces exported by the ``vmlinux``
|
|
|
|
binary and by the all of the compiled modules.
|
|
|
|
|
|
|
|
Options
|
|
|
|
=======
|
|
|
|
|
|
|
|
* ``--help | -h``
|
|
|
|
|
|
|
|
Display a short help about the command and exit.
|
|
|
|
|
|
|
|
|
|
|
|
* ``--version | -v``
|
|
|
|
|
|
|
|
Display the version of the program and exit.
|
|
|
|
|
|
|
|
* ``--verbose``
|
|
|
|
|
|
|
|
Display some verbose messages while executing.
|
|
|
|
|
2018-01-09 15:12:13 +00:00
|
|
|
* ``--debug-info-dir1 | --d1`` <*di-path1*>
|
|
|
|
|
|
|
|
For cases where the debug information for the binaries of the
|
|
|
|
first Linux kernel is split out into separate files, tells
|
|
|
|
``kmidiff`` where to find those separate debug information files.
|
|
|
|
|
|
|
|
Note that *di-path* must point to the root directory under which
|
|
|
|
the debug information is arranged in a tree-like manner. Under
|
|
|
|
Red Hat based systems, that directory is usually
|
|
|
|
``<root>/usr/lib/debug``.
|
|
|
|
|
|
|
|
* ``--debug-info-dir2 | --d2`` <*di-path2*>
|
|
|
|
|
|
|
|
Like ``--debug-info-dir1``, this options tells ``kmidiff`` where
|
|
|
|
to find the split debug information for the binaries of the second
|
|
|
|
Linux kernel.
|
|
|
|
|
2017-05-31 09:48:50 +00:00
|
|
|
* ``--vmlinux1 | --l1`` <*path-to-first-vmlinux*>
|
|
|
|
|
|
|
|
Sets the path to the first ``vmlinux`` binary to consider. This
|
|
|
|
has to be the uncompressed vmlinux binary compiled with debug
|
|
|
|
info.
|
|
|
|
|
|
|
|
* ``--vmlinux2 | --l2`` <*path-to-first-vmlinux*>
|
|
|
|
|
|
|
|
Sets the path to the second ``vmlinux`` binary to consider. This
|
|
|
|
has to be the uncompressed vmlinux binary compiled with debug
|
|
|
|
info.
|
|
|
|
|
|
|
|
* ``--kmi-whitelist | -w`` <*path-to-interface-whitelist*>
|
|
|
|
|
|
|
|
Set the path to the white list of interfaces to compare while
|
|
|
|
comparing the Kernel Module Interface of the first kernel against
|
|
|
|
the one of the second kernel.
|
|
|
|
|
|
|
|
If this option is not provided, *all* the exported interfaces of
|
|
|
|
the two kernels are compared. That takes a lot of times and is
|
|
|
|
not necessarily meaningful because many interface are probably
|
|
|
|
meant to see their reachable types change.
|
|
|
|
|
|
|
|
So please, make sure you always use this option unless you really
|
|
|
|
know what you are doing.
|
|
|
|
|
|
|
|
* ``--suppressions | --suppr`` <*path-to-suppressions*>
|
|
|
|
|
|
|
|
Use a :ref:`suppression specification <suppr_spec_label>` file
|
|
|
|
located at *path-to-suppressions*. Note that this option can
|
|
|
|
appear multiple times on the command line. In that case, all of
|
|
|
|
the provided suppression specification files are taken into
|
|
|
|
account.
|
|
|
|
|
|
|
|
Please note that, by default, if this option is not provided, then
|
|
|
|
the :ref:`default suppression specification files
|
|
|
|
<abidiff_default_supprs_label>` are loaded .
|
2017-10-04 08:33:53 +00:00
|
|
|
|
|
|
|
|
2018-12-06 22:39:34 +00:00
|
|
|
* ``--impacted-interfaces | -i``
|
2017-10-06 09:25:48 +00:00
|
|
|
|
|
|
|
Tell what interfaces got impacted by each individual ABI change.
|
|
|
|
|
2017-10-04 08:33:53 +00:00
|
|
|
* ``--full-impact | -f``
|
|
|
|
|
|
|
|
Emit a change report that shows the full impact of each change on
|
|
|
|
exported interfaces. This is the default kind of report emitted
|
|
|
|
by tools like ``abidiff`` or ``abipkgdiff``.
|
Represent sizes and offsets in bytes and hexadecimal values
In current change reports, sizes and offsets are represented in bits,
and as decimal values. Some users prefer having those offsets be in
bytes and as hexadecimal values.
This commits adds 4 new options to let users see sizes and offsets be
represented either in bits, bytes, decimal or hexadecimal values.
* doc/manuals/abidiff.rst: Add documentation for the new
--show-bits, --show-bytes, --show-hex and --show-dec options.
* doc/manuals/abipkgdiff.rst: Likewise.
* doc/manuals/kmidiff.rst: Likewise.
* include/abg-comparison.h (diff_context::{show_hex_values,
show_offsets_sizes_in_bits}): Declare new member functions.
* src/abg-comparison-priv.h (diff_context::priv::{hex_values_,
show_offsets_sizes_in_bits_}): Declare new data members.
(diff_context::priv::priv): Initialize them.
* src/abg-comparison.cc (diff_context::{show_hex_values,
show_offsets_sizes_in_bits}): Define new member functions.
* src/abg-default-reporter.cc (default_reporter::report): Adjust
the call to maybe_report_diff_for_symbol.
* src/abg-leaf-reporter.cc (leaf_reporter::report): Likewise.
* src/abg-reporter-priv.h (convert_bits_to_bytes)
(maybe_convert_bits_to_bytes, emit_num_value, show_offset_or_size)
(show_numerical_change): Declare new functions.
(maybe_report_diff_for_symbol): Take a diff_context in parameter.
* src/abg-reporter-priv.cc (convert_bits_to_bytes, emit_num_value)
(maybe_convert_bits_to_bytes, show_numerical_change)
(show_offset_or_size): Define new functions.
(represent): In the overload for method_decl, var_decl, use the
new emit_num_value function.
(represent_data_member): Use the new show_offset_or_size function.
(maybe_show_relative_offset_change): Use the new
convert_bits_to_bytes, diff_context::show_offsets_sizes_in_bits,
emit_num_value functions.
(maybe_show_relative_offset_change): Likewise.
(report_size_and_alignment_changes): Use the new emit_num_value
and show_numerical_change functions.
(maybe_report_diff_for_symbol): Tak a diff_context in argument.
Use the new show_numerical_change function.
* tests/test-diff-filter.cc (in_out_spec): Add a new entry to test
hexa and bytes output.
* tools/abidiff.cc (options::{show_hexadecimal_values,
show_offsets_sizes_in_bits}): New data members.
(options::options): Initialize them.
(display_usage): New help strings for the new
--show{bytes,bits,hex,dec} options.
(parse_command_line): Parse the new --show{bytes,bits,hex,dec} options.
(set_diff_context_from_opts) Set the diff context wrt hex and
bytes values.
* tools/abipkgdiff.cc (options::{show_hexadecimal_values,
show_offsets_sizes_in_bits}): New data members.
(options::options): Initialize them.
(display_usage): New help strings for the new
--show{bytes,bits,hex,dec} options.
(set_diff_context_from_opts): Set the diff context wrt hex and
bytes values.
(parse_command_line): Parse the new --show{bytes,bits,hex,dec}
options.
* tools/kmidiff.cc (options::{show_hexadecimal_values,
show_offsets_sizes_in_bits}): New data members.
(options::options): Initialize them.
(display_usage):New help strings for the new
--show{bytes,bits,hex,dec} options.
(parse_command_line): Parse the new --show{bytes,bits,hex,dec}
options.
(set_diff_context): Set the diff context wrt hex and bytes values.
* tests/data/test-diff-filter/test30-pr18904-rvalueref-report2.txt:
New reference test output.
* tests/data/Makefile.am: Add the new reference test output above
to source distribution.
* tests/data/test-abicompat/test0-fn-changed-report-0.txt: Adjust.
* tests/data/test-abicompat/test0-fn-changed-report-2.txt: Likewise.
* tests/data/test-abicompat/test5-fn-changed-report-0.txt: Likewise.
* tests/data/test-abicompat/test5-fn-changed-report-1.txt: Likewise.
* tests/data/test-abicompat/test6-var-changed-report-0.txt: Likewise.
* tests/data/test-abicompat/test6-var-changed-report-1.txt: Likewise.
* tests/data/test-abicompat/test7-fn-changed-report-0.txt: Likewise.
* tests/data/test-abicompat/test7-fn-changed-report-1.txt: Likewise.
* tests/data/test-abicompat/test7-fn-changed-report-2.txt: Likewise.
* tests/data/test-abicompat/test8-fn-changed-report-0.txt: Likewise.
* tests/data/test-abicompat/test9-fn-changed-report-0.txt: Likewise.
* tests/data/test-abidiff/test-PR18791-report0.txt: Likewise.
* tests/data/test-abidiff/test-qual-type0-report.txt: Likewise.
* tests/data/test-abidiff/test-struct0-report.txt: Likewise.
* tests/data/test-abidiff/test-struct1-report.txt: Likewise.
* tests/data/test-abidiff/test-var0-report.txt: Likewise.
* tests/data/test-diff-dwarf/test0-report.txt: Likewise.
* tests/data/test-diff-dwarf/test1-report.txt: Likewise.
* tests/data/test-diff-dwarf/test10-report.txt: Likewise.
* tests/data/test-diff-dwarf/test11-report.txt: Likewise.
* tests/data/test-diff-dwarf/test13-report.txt: Likewise.
* tests/data/test-diff-dwarf/test21-redundant-fn-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test22-changed-parm-c-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test26-added-parms-before-variadic-report.txt: Likewise.
* tests/data/test-diff-dwarf/test27-local-base-diff-report.txt: Likewise.
* tests/data/test-diff-dwarf/test3-report.txt: Likewise.
* tests/data/test-diff-dwarf/test32-fnptr-changes-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test33-fnref-changes-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test34-pr19173-libfoo-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test35-pr19173-libfoo-long-clang-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test35-pr19173-libfoo-long-gcc-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test36-ppc64-aliases-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test37-union-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test39-union-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test40-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test43-PR22913-report-0.txt: Likewise.
* tests/data/test-diff-dwarf/test8-report.txt: Likewise.
* tests/data/test-diff-dwarf/test9-report.txt: Likewise.
* tests/data/test-diff-filter/test0-report.txt: Likewise.
* tests/data/test-diff-filter/test01-report.txt: Likewise.
* tests/data/test-diff-filter/test1-report.txt: Likewise.
* tests/data/test-diff-filter/test10-report.txt: Likewise.
* tests/data/test-diff-filter/test11-report.txt: Likewise.
* tests/data/test-diff-filter/test13-report.txt: Likewise.
* tests/data/test-diff-filter/test14-0-report.txt: Likewise.
* tests/data/test-diff-filter/test14-1-report.txt: Likewise.
* tests/data/test-diff-filter/test15-0-report.txt: Likewise.
* tests/data/test-diff-filter/test15-1-report.txt: Likewise.
* tests/data/test-diff-filter/test16-report-2.txt: Likewise.
* tests/data/test-diff-filter/test16-report.txt: Likewise.
* tests/data/test-diff-filter/test17-0-report.txt: Likewise.
* tests/data/test-diff-filter/test17-1-report.txt: Likewise.
* tests/data/test-diff-filter/test2-report.txt: Likewise.
* tests/data/test-diff-filter/test27-redundant-and-filtered-children-nodes-report-0.txt: Likewise.
* tests/data/test-diff-filter/test27-redundant-and-filtered-children-nodes-report-1.txt: Likewise.
* tests/data/test-diff-filter/test27-redundant-and-filtered-children-nodes-report-2.txt: Likewise.
* tests/data/test-diff-filter/test28-redundant-and-filtered-children-nodes-report-0.txt: Likewise.
* tests/data/test-diff-filter/test28-redundant-and-filtered-children-nodes-report-1.txt: Likewise.
* tests/data/test-diff-filter/test29-finer-redundancy-marking-report-0.txt: Likewise.
* tests/data/test-diff-filter/test3-report.txt: Likewise.
* tests/data/test-diff-filter/test30-pr18904-rvalueref-report0.txt: Likewise.
* tests/data/test-diff-filter/test30-pr18904-rvalueref-report1.txt: Likewise.
* tests/data/test-diff-filter/test31-pr18535-libstdc++-report-0.txt: Likewise.
* tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt: Likewise.
* tests/data/test-diff-filter/test32-ppc64le-struct-change-report0.txt: Likewise.
* tests/data/test-diff-filter/test35-pr18754-no-added-syms-report-0.txt: Likewise.
* tests/data/test-diff-filter/test35-pr18754-no-added-syms-report-1.txt: Likewise.
* tests/data/test-diff-filter/test37-report-0.txt: Likewise.
* tests/data/test-diff-filter/test39/test39-report-0.txt: Likewise.
* tests/data/test-diff-filter/test42-leaf-report-output-0.txt: Likewise.
* tests/data/test-diff-filter/test6-report.txt: Likewise.
* tests/data/test-diff-filter/test9-report.txt: Likewise.
* tests/data/test-diff-pkg/dirpkg-1-report-1.txt: Likewise.
* tests/data/test-diff-pkg/dirpkg-3-report-1.txt: Likewise.
* tests/data/test-diff-pkg/dirpkg-3-report-2.txt: Likewise.
* tests/data/test-diff-pkg/libICE-1.0.6-1.el6.x86_64.rpm--libICE-1.0.9-2.el7.x86_64.rpm-report-0.txt: Likewise.
* tests/data/test-diff-pkg/libsigc++-2.0-0c2a_2.4.0-1_amd64--libsigc++-2.0-0v5_2.4.1-1ubuntu2_amd64-report-0.txt: Likewise.
* tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-2.txt: Likewise.
* tests/data/test-diff-pkg/symlink-dir-test1-report0.txt: Likewise.
* tests/data/test-diff-pkg/tarpkg-0-report-0.txt: Likewise.
* tests/data/test-diff-pkg/tarpkg-1-report-0.txt: Likewise.
* tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-0.txt: Likewise.
* tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test0-type-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test0-type-suppr-report-3.txt: Likewise.
* tests/data/test-diff-suppr/test0-type-suppr-report-5.txt: Likewise.
* tests/data/test-diff-suppr/test0-type-suppr-report-7.txt: Likewise.
* tests/data/test-diff-suppr/test1-typedef-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test1-typedef-suppr-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test11-add-data-member-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test12-add-data-member-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test12-add-data-member-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test13-suppr-through-pointer-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test13-suppr-through-pointer-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test14-suppr-non-redundant-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test14-suppr-non-redundant-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test15-suppr-added-fn-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test15-suppr-added-fn-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test15-suppr-added-fn-report-5.txt: Likewise.
* tests/data/test-diff-suppr/test16-suppr-removed-fn-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test16-suppr-removed-fn-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test17-suppr-added-var-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test17-suppr-added-var-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test17-suppr-added-var-report-5.txt: Likewise.
* tests/data/test-diff-suppr/test18-suppr-removed-var-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test18-suppr-removed-var-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test18-suppr-removed-var-report-5.txt: Likewise.
* tests/data/test-diff-suppr/test2-struct-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test23-alias-filter-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test23-alias-filter-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test24-soname-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test24-soname-report-10.txt: Likewise.
* tests/data/test-diff-suppr/test24-soname-report-12.txt: Likewise.
* tests/data/test-diff-suppr/test24-soname-report-14.txt: Likewise.
* tests/data/test-diff-suppr/test24-soname-report-16.txt: Likewise.
* tests/data/test-diff-suppr/test24-soname-report-4.txt: Likewise.
* tests/data/test-diff-suppr/test25-typedef-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test26-loc-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test26-loc-suppr-report-3.txt: Likewise.
* tests/data/test-diff-suppr/test29-soname-report-3.txt: Likewise.
* tests/data/test-diff-suppr/test29-soname-report-6.txt: Likewise.
* tests/data/test-diff-suppr/test29-soname-report-8.txt: Likewise.
* tests/data/test-diff-suppr/test3-struct-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test3-struct-suppr-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test3-struct-suppr-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test30-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test31-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test32-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test32-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test33-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test35-leaf-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test36-leaf-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test4-local-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test4-local-suppr-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test5-fn-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test5-fn-suppr-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test5-fn-suppr-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test5-fn-suppr-report-3.txt: Likewise.
* tests/data/test-diff-suppr/test5-fn-suppr-report-4.txt: Likewise.
* tests/data/test-diff-suppr/test5-fn-suppr-report-5.txt: Likewise.
* tests/data/test-diff-suppr/test6-fn-suppr-report-0-1.txt: Likewise.
* tests/data/test-diff-suppr/test6-fn-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test6-fn-suppr-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test6-fn-suppr-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test6-fn-suppr-report-3.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-2.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-3.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-4.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-7.txt: Likewise.
* tests/data/test-diff-suppr/test7-var-suppr-report-8.txt: Likewise.
* tests/data/test-diff-suppr/test8-redundant-fn-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test8-redundant-fn-report-1.txt: Likewise.
* tests/data/test-diff-suppr/test9-changed-parm-c-report-0.txt: Likewise.
* tests/data/test-diff-suppr/test9-changed-parm-c-report-1.txt: Likewise.
Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2018-04-20 15:31:35 +00:00
|
|
|
|
|
|
|
* ``--show-bytes``
|
|
|
|
|
|
|
|
Show sizes and offsets in bytes, not bits. This option is
|
|
|
|
activated by default.
|
|
|
|
|
|
|
|
* ``--show-bits``
|
|
|
|
|
|
|
|
Show sizes and offsets in bits, not bytes. By default, sizes and
|
|
|
|
offsets are shown in bytes.
|
|
|
|
|
|
|
|
* ``--show-hex``
|
|
|
|
|
|
|
|
Show sizes and offsets in hexadecimal base. This option is
|
|
|
|
activated by default.
|
|
|
|
|
|
|
|
* ``--show-dec``
|
|
|
|
|
|
|
|
Show sizes and offsets in decimal base.
|