Skip to content

Add run test framework for ARM, AArch64, RISCV32 and RISCV64#1157

Open
parth-07 wants to merge 1 commit into
qualcomm:mainfrom
parth-07:RunTestFramework
Open

Add run test framework for ARM, AArch64, RISCV32 and RISCV64#1157
parth-07 wants to merge 1 commit into
qualcomm:mainfrom
parth-07:RunTestFramework

Conversation

@parth-07
Copy link
Copy Markdown
Contributor

@parth-07 parth-07 commented May 11, 2026

This commit adds the run test framework for ARM, AARch64, RISCV32,
RISCV64 and x86-64. Additionally, it modifies the ci.yaml such that the tools
requirements to enable run tests for these targets is available.

The added HelloWorld and HelloWorldCXX test are marked XFAIL for the riscv target
because of eld bugs. QEMU is crashing for static hello world program likely
because of missing IFunc support and linker is unable to find a shared library that is
indeed present in the sysroot for the dynamic hello world program.

The HelloWorld and HelloWorldCXX test are marked UNSUPPORTED for x86-64
because this test is passing on release builds but is causing a
linker crash on builds with assertions enabled. The crash is happening
when reading the compressed sections. It cannot be marked as XFAIL
because the test will pass on the CI builder, and will cause the
'check-eld' step to fail.

@parth-07 parth-07 force-pushed the RunTestFramework branch 3 times, most recently from 69bcc6a to d667847 Compare May 11, 2026 14:33
Comment thread .github/workflows/ci.yml Outdated
@parth-07 parth-07 force-pushed the RunTestFramework branch from d667847 to c04ed36 Compare May 11, 2026 16:13
@parth-07 parth-07 force-pushed the RunTestFramework branch 4 times, most recently from bbe2c71 to 965ed02 Compare May 12, 2026 18:05
Comment thread test/Common/RunTests/HelloWorld/HelloWorld.test Outdated
Comment thread test/Common/RunTests/HelloWorld/HelloWorld.test Outdated
Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml
Comment thread CMakeLists.txt
Comment thread .github/workflows/ci.yml
Comment thread CMakeLists.txt Outdated
@parth-07 parth-07 force-pushed the RunTestFramework branch 2 times, most recently from 97bba44 to af932c9 Compare May 12, 2026 18:27
@quic-seaswara quic-seaswara requested a review from quic-areg May 12, 2026 18:43
@parth-07 parth-07 force-pushed the RunTestFramework branch from af932c9 to c92cfed Compare May 12, 2026 18:47
@quic-seaswara
Copy link
Copy Markdown
Contributor

Probably complete the list with adding X86 so that we have a stable sysroot to test with.

@parth-07 parth-07 force-pushed the RunTestFramework branch 14 times, most recently from 362cef8 to a136786 Compare May 13, 2026 12:49
@parth-07
Copy link
Copy Markdown
Contributor Author

Probably complete the list with adding X86 so that we have a stable sysroot to test with.

I have added x86-64 cross-toolchain as well.

@parth-07 parth-07 force-pushed the RunTestFramework branch from a136786 to 71f9907 Compare May 13, 2026 12:50
@parth-07 parth-07 requested a review from quic-seaswara May 13, 2026 15:16
Comment thread .github/workflows/ci.yml
Comment thread CMakeLists.txt Outdated
Comment thread test/lit.cfg Outdated
Comment thread test/Common/RunTests/HelloWorld/HelloWorld.test Outdated
@parth-07 parth-07 force-pushed the RunTestFramework branch 4 times, most recently from 70893f7 to b076a70 Compare May 14, 2026 10:54
This commit adds the run test framework for ARM, AARch64, RISCV32,
RISCV64 and x86-64. Additionally, it modifies the ci.yaml such that the tools
requirements to enable run tests for these targets is available.

The added HelloWorld and HelloWorldCXX test are marked XFAIL for the riscv target
because of eld bugs. QEMU is crashing for static hello world program likely
because of missing IFunc support and linker is unable to find a shared library that is
indeed present in the sysroot for the dynamic hello world program.

The HelloWorld and HelloWorldCXX test are marked UNSUPPORTED for x86-64
because this test is passing on release builds but is causing a
linker crash on builds with assertions enabled. The crash is happening
when reading the compressed sections. It cannot be marked as XFAIL
because the test will pass on the CI builder, and will cause the
'check-eld' step to fail.

Signed-off-by: Parth Arora <partaror@qti.qualcomm.com>
Comment thread .github/workflows/ci.yml
Comment thread .github/workflows/ci.yml
Comment thread test/Common/RunTests/HelloWorld/HelloWorld.test
Comment thread test/Common/RunTests/HelloWorld/HelloWorld.test
Comment thread test/Common/RunTests/HelloWorld/HelloWorld.test
Comment thread README.md
@parth-07 parth-07 requested a review from quic-seaswara May 14, 2026 16:58
@quic-seaswara
Copy link
Copy Markdown
Contributor

I prefer we use environment variables instead of cmake variables since it affects a small subset. quickly changing the environment and running is so much easy.

We do need a blanket option in cmake to enable/disable run tests completely though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants