diff options
| author | Matheus Tavares Bernardino <[email protected]> | 2024-04-02 16:55:45 -0300 |
|---|---|---|
| committer | Mark Wielaard <[email protected]> | 2024-04-04 18:34:57 +0200 |
| commit | 7cf68d0b84d7990d03c4ab15c210952f7c735c2a (patch) | |
| tree | 498ca275252305d2c1227ad75a5962e3eb9ea711 /tests | |
| parent | a8fb92b94970e64d4208112e946f4f3112c4ac73 (diff) | |
Add support for Hexagon
This implements initial support for the Hexagon architecture. The
Hexagon ABI spec can be seen at
https://lists.llvm.org/pipermail/llvm-dev/attachments/20190916/21516a52/attachment-0001.pdf
A hello_hexagon.ko test is also added.
$ head tests/test-suite.log
[...]
# TOTAL: 275
# PASS: 269
# SKIP: 6
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
$ cat tests/run-strip-reloc-ko.sh.log
[...]
runtest hello_hexagon.ko
PASS run-strip-reloc-ko.sh (exit status: 0)
* backends/Makefile.am (modules): Add hexagon.
(hexagon_SRCS): New var for hexagon_init.c and hexagon_symbol.c.
(libebl_backends_a_SOURCES): Add hexagon_SRCS.
* backends/hexagon_init.c: New file.
* backends/hexagon_reloc.def: Likewise.
* backends/hexagon_symbol.c: Likewise.
* libebl/eblopenbackend.c (hexagon_init): Declare.
(machines): Add hexagon.
* libelf/elf-knowledge.h: Add hexagon e_flags values, section
indices and and relocs.
* src/elflint.c (valid_e_machine): Add EM_QDSP6.
* tests/Makefile.am (EXTRA_DIST): Add hello_hexagon.ko.bz2.
* tests/hello_hexagon.ko.bz2: New test file.
* tests/run-strip-reloc-ko.sh: Add hello_hexagon.ko.
Signed-off-by: Matheus Tavares Bernardino <[email protected]>
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/Makefile.am | 2 | ||||
| -rw-r--r-- | tests/hello_hexagon.ko.bz2 | bin | 0 -> 11184 bytes | |||
| -rwxr-xr-x | tests/run-strip-reloc-ko.sh | 3 |
3 files changed, 3 insertions, 2 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am index 40e0eaa5..b7fb7238 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -320,7 +320,7 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \ hello_i386.ko.bz2 hello_x86_64.ko.bz2 \ hello_ppc64.ko.bz2 hello_s390.ko.bz2 hello_aarch64.ko.bz2 \ hello_m68k.ko.bz2 hello_riscv64.ko.bz2 hello_csky.ko.bz2 \ - hello_arc_hs4.ko.bz2 \ + hello_arc_hs4.ko.bz2 hello_hexagon.ko.bz2 \ run-unstrip-test.sh run-unstrip-test2.sh \ testfile-info-link.bz2 testfile-info-link.debuginfo.bz2 \ testfile-info-link.stripped.bz2 run-unstrip-test3.sh \ diff --git a/tests/hello_hexagon.ko.bz2 b/tests/hello_hexagon.ko.bz2 Binary files differnew file mode 100644 index 00000000..e60d2c1b --- /dev/null +++ b/tests/hello_hexagon.ko.bz2 diff --git a/tests/run-strip-reloc-ko.sh b/tests/run-strip-reloc-ko.sh index 55fa74db..7bc685e6 100755 --- a/tests/run-strip-reloc-ko.sh +++ b/tests/run-strip-reloc-ko.sh @@ -4,7 +4,7 @@ testfiles hello_i386.ko hello_x86_64.ko hello_ppc64.ko hello_s390.ko \ hello_aarch64.ko hello_m68k.ko hello_riscv64.ko hello_csky.ko \ - hello_arc_hs4.ko + hello_arc_hs4.ko hello_hexagon.ko # Most simple hello world kernel module for various architectures. # Make sure that it contains debuginfo with CONFIG_DEBUG_INFO=y. @@ -47,5 +47,6 @@ runtest hello_m68k.ko 1 runtest hello_riscv64.ko 1 runtest hello_csky.ko 1 runtest hello_arc_hs4.ko 1 +runtest hello_hexagon.ko 1 exit $runtest_status |
