Commit 23580d7b authored by Ian Rogers's avatar Ian Rogers Committed by Namhyung Kim
Browse files

perf build: Combine test-dwarf-getlocations into test-libdw



dwarf_getlocations support in libdw is more than 10 years old. Make
libdw imply dwarf_getlocations support and simplify build logic.

Signed-off-by: default avatarIan Rogers <irogers@google.com>
Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
Tested-by: default avatarLeo Yan <leo.yan@arm.com>
Cc: Anup Patel <anup@brainfault.org>
Cc: Yang Jihong <yangjihong@bytedance.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Shenlin Liang <liangshenlin@eswincomputing.com>
Cc: Nick Terrell <terrelln@fb.com>
Cc: Guilherme Amadio <amadio@gentoo.org>
Cc: Steinar H. Gunderson <sesse@google.com>
Cc: Changbin Du <changbin.du@huawei.com>
Cc: Alexander Lobakin <aleksander.lobakin@intel.com>
Cc: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Guo Ren <guoren@kernel.org>
Cc: Masahiro Yamada <masahiroy@kernel.org>
Cc: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: James Clark <james.clark@linaro.org>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Chen Pei <cp0613@linux.alibaba.com>
Cc: Leo Yan <leo.yan@linux.dev>
Cc: Oliver Upton <oliver.upton@linux.dev>
Cc: Aditya Gupta <adityag@linux.ibm.com>
Cc: Kajol Jain <kjain@linux.ibm.com>
Cc: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-riscv@lists.infradead.org
Cc: Bibo Mao <maobibo@loongson.cn>
Cc: John Garry <john.g.garry@oracle.com>
Cc: Atish Patra <atishp@rivosinc.com>
Cc: Dima Kogan <dima@secretsauce.net>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Dr. David Alan Gilbert <linux@treblig.org>
Cc: linux-csky@vger.kernel.org
Link: https://lore.kernel.org/r/20241017001354.56973-7-irogers@google.com


Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
parent 3034b48a
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -31,7 +31,6 @@ endef
FEATURE_TESTS_BASIC :=                  \
        backtrace                       \
        libdw                           \
        dwarf_getlocations              \
        dwarf_getcfi                    \
        eventfd                         \
        fortify-source                  \
@@ -120,7 +119,6 @@ endif

FEATURE_DISPLAY ?=              \
         libdw                  \
         dwarf_getlocations     \
         glibc                  \
         libbfd                 \
         libbfd-buildid		\
+0 −4
Original line number Diff line number Diff line
@@ -6,7 +6,6 @@ FILES= \
         test-backtrace.bin                     \
         test-bionic.bin                        \
         test-libdw.bin                         \
         test-dwarf_getlocations.bin            \
         test-dwarf_getcfi.bin                  \
         test-eventfd.bin                       \
         test-fortify-source.bin                \
@@ -188,9 +187,6 @@ endif
$(OUTPUT)test-libdw.bin:
	$(BUILD) $(DWLIBS)

$(OUTPUT)test-dwarf_getlocations.bin:
	$(BUILD) $(DWLIBS)

$(OUTPUT)test-dwarf_getcfi.bin:
	$(BUILD) $(DWLIBS)

+0 −5
Original line number Diff line number Diff line
@@ -42,10 +42,6 @@
# include "test-libdw.c"
#undef main

#define main main_test_dwarf_getlocations
# include "test-dwarf_getlocations.c"
#undef main

#define main main_test_eventfd
# include "test-eventfd.c"
#undef main
@@ -184,7 +180,6 @@ int main(int argc, char *argv[])
	main_test_gettid();
	main_test_glibc();
	main_test_libdw();
	main_test_dwarf_getlocations();
	main_test_eventfd();
	main_test_libelf_getphdrnum();
	main_test_libelf_gelf_getnote();
+0 −13
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
#include <stdlib.h>
#include <elfutils/libdw.h>

int main(void)
{
	Dwarf_Addr base, start, end;
	Dwarf_Attribute attr;
	Dwarf_Op *op;
        size_t nops;
	ptrdiff_t offset = 0;
        return (int)dwarf_getlocations(&attr, offset, &base, &start, &end, &op, &nops);
}
+13 −1
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
#include <stdlib.h>
#include <dwarf.h>
#include <elfutils/libdw.h>
#include <elfutils/libdwfl.h>
@@ -22,7 +23,18 @@ int test_libdw_unwind(void)
	return 0;
}

int test_libdw_getlocations(void)
{
	Dwarf_Addr base, start, end;
	Dwarf_Attribute attr;
	Dwarf_Op *op;
	size_t nops;
	ptrdiff_t offset = 0;

	return (int)dwarf_getlocations(&attr, offset, &base, &start, &end, &op, &nops);
}

int main(void)
{
	return test_libdw() + test_libdw_unwind();
	return test_libdw() + test_libdw_unwind() + test_libdw_getlocations();
}
Loading