xref: /openbmc/linux/scripts/pahole-flags.sh (revision 657c45b3)
1#!/bin/sh
2# SPDX-License-Identifier: GPL-2.0
3
4extra_paholeopt=
5
6if ! [ -x "$(command -v ${PAHOLE})" ]; then
7	exit 0
8fi
9
10pahole_ver=$($(dirname $0)/pahole-version.sh ${PAHOLE})
11
12if [ "${pahole_ver}" -ge "118" ] && [ "${pahole_ver}" -le "121" ]; then
13	# pahole 1.18 through 1.21 can't handle zero-sized per-CPU vars
14	extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_vars"
15fi
16if [ "${pahole_ver}" -ge "121" ]; then
17	extra_paholeopt="${extra_paholeopt} --btf_gen_floats"
18fi
19if [ "${pahole_ver}" -ge "122" ]; then
20	extra_paholeopt="${extra_paholeopt} -j"
21fi
22if [ "${pahole_ver}" -ge "124" ]; then
23	# see PAHOLE_HAS_LANG_EXCLUDE
24	extra_paholeopt="${extra_paholeopt} --lang_exclude=rust"
25fi
26if [ "${pahole_ver}" -ge "125" ]; then
27	extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_inconsistent_proto --btf_gen_optimized"
28fi
29
30echo ${extra_paholeopt}
31