[Nanvix] Add x86_64 toolchain support - #24
Merged
Conversation
ppenna
force-pushed
the
feature/nanvix-x86_64
branch
from
August 1, 2026 15:13
8a06a58 to
001a7a7
Compare
Extend the Nanvix toolchain to support x86_64 alongside i686. Disable the red zone by default for x86_64 and apply ELF64 dynamic relocations at link time for Nanvix startup self-linking. Add the installed runtime library path and constrain default linker-script discovery to the sysroot. Teach the z script to propagate the selected target through compiler and runtime builds, sysroot staging, verification, and smoke tests. Reject libc bundles whose ELF class does not match the target. Build and test both architectures in CI and publish separate release archives. Extend Clang driver and preprocessor coverage and document the x86_64 workflow and ABI requirements.
ppenna
force-pushed
the
feature/nanvix-x86_64
branch
from
August 1, 2026 16:07
001a7a7 to
d0e3595
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
x86_64-nanvixtarget selection, architecture-matched sysroot staging, runtime source fallback, and ELF-class validation while preserving the i686 defaultTesting
build/bin/llvm-lit -sv clang/test/Driver/nanvix.c clang/test/Preprocessor/init-nanvix.c./z verify./z testbash -n ./zshellcheck -S warning ./zgit diff --check