SHA256
1
0
forked from pool/dwz
dwz/dwz-testsuite-fix-pr25109.sh-on-riscv64.patch

58 lines
1.7 KiB
Diff
Raw Normal View History

[testsuite] Fix pr25109.sh on riscv64
On riscv64, I run into:
...
cc main.c no-multifile-prop-dw.S -o no-multifile-prop
no-multifile-prop-dw.S: Assembler messages:
no-multifile-prop-dw.S:25: Error: non-constant .uleb128 is not supported
make: *** [Makefile:99: no-multifile-prop] Error 1
...
Fix this by allowing to fail to build the test-case, and marking it as
unsupported.
2021-02-26 Tom de Vries <tdevries@suse.de>
* Makefile (no-multifile-prop): Add target rule.
* testsuite/dwz.tests/dwz-tests.exp: Require no-multifile-prop for
pr25109.sh.
---
Makefile | 6 +++++-
testsuite/dwz.tests/dwz-tests.exp | 3 +++
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index d320266..7969490 100644
--- a/Makefile
+++ b/Makefile
@@ -95,9 +95,13 @@ $(TEMP_ASM_FILES): %-dw.S: $(TEST_SRC)/../lib/%.exp
export DEJAGNU=$(DEJAGNU); \
runtest --tool=dwz -srcdir $(srcdir)/testsuite/ lib/$*.exp
-$(TEST_EXECS_DWARF_ASM): %: %-dw.S
+$(filter-out no-multifile-prop, $(TEST_EXECS_DWARF_ASM)): %: %-dw.S
$(CC) $(TEST_SRC)/main.c $< -o $@
+# Fails to compile on riscv64: Error: non-constant .uleb128 is not supported.
+no-multifile-prop: %: %-dw.S
+ $(CC) $(TEST_SRC)/main.c $< -o $@ || true
+
odr-struct:
$(CXX) $(TEST_SRC)/odr.cc $(TEST_SRC)/odr-2.cc -I$(TEST_SRC) -o $@ -g \
-DKIND=struct
diff --git a/testsuite/dwz.tests/dwz-tests.exp b/testsuite/dwz.tests/dwz-tests.exp
index 48c0015..0ad77ea 100644
--- a/testsuite/dwz.tests/dwz-tests.exp
+++ b/testsuite/dwz.tests/dwz-tests.exp
@@ -86,6 +86,9 @@ foreach test $tests {
continue
}
}
+ if { $basename == "pr25109.sh" } {
+ lappend required_execs no-multifile-prop
+ }
set unsupported 0
foreach required_exec $required_execs {