[PATCH] perf beauty: Reuse the generic switch.

From: Ian Rogers
Date: Thu May 13 2021 - 02:04:58 EST

Previously the code would see if, for example,
tools/perf/arch/arm/include/uapi/asm/errno.h exists and if not generate
a "generic" switch statement using the asm-generic/errno.h. This creates
multiple identical "generic" switch statements before the default
generic switch statement for an unknown architecture. By simplifying the
archlist to be only for architectures that are not "generic" the amount
of generated code can be reduced from 14 down to 6 functions.

Remove the special case of x86, instead reverse the architecture names
so that it comes first.

Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
tools/perf/trace/beauty/arch_errno_names.sh | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/tools/perf/trace/beauty/arch_errno_names.sh b/tools/perf/trace/beauty/arch_errno_names.sh
index 9f9ea45cddc4..2c5f72fa8108 100755
--- a/tools/perf/trace/beauty/arch_errno_names.sh
+++ b/tools/perf/trace/beauty/arch_errno_names.sh
@@ -87,14 +87,13 @@ cat <<EoHEADER


-# Create list of architectures and ignore those that do not appear
-# in tools/perf/arch
+# Create list of architectures that have a specific errno.h.
-for arch in $(find $toolsdir/arch -maxdepth 1 -mindepth 1 -type d -printf "%f\n" | grep -v x86 | sort); do
- test -d $toolsdir/perf/arch/$arch && archlist="$archlist $arch"
+for arch in $(find $toolsdir/arch -maxdepth 1 -mindepth 1 -type d -printf "%f\n" | sort -r); do
+ test -f $toolsdir/arch/$arch/include/uapi/asm/errno.h && archlist="$archlist $arch"

-for arch in x86 $archlist generic; do
+for arch in generic $archlist; do
process_arch "$arch"
-create_arch_errno_table_func "x86 $archlist" "generic"
+create_arch_errno_table_func "$archlist" "generic"