Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(clang): add clang support for riscv64 and aarch64 #77

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Commits on Oct 20, 2023

  1. feat(clang): add llvm/clang support in makefile

    Signed-off-by: Bruno Sa <bruno.vilaca.sa@gmail.com>
    ninolomata committed Oct 20, 2023
    Configuration menu
    Copy the full SHA
    725c149 View commit details
    Browse the repository at this point in the history
  2. feat(clang): refactor headers generation for clang

    Clang assembler requires valid assembly; otherwise, an error is thrown. Instead of using "->" as the token to parse for assembly macro defines, we define the tokens "#", which is used for comments in assembly files. The generated output will be valid for both clang and gcc.
    
    Signed-off-by: Bruno Sa <bruno.vilaca.sa@gmail.com>
    ninolomata committed Oct 20, 2023
    Configuration menu
    Copy the full SHA
    93cdc12 View commit details
    Browse the repository at this point in the history
  3. feat(clang): add support for riscv clang

    This commit fixes relocation errors identified by the clang compiler and marks the .gtl_page_tables section as no data otherwise there is a type mismatch.
    
    Signed-off-by: Bruno Sa <bruno.vilaca.sa@gmail.com>
    ninolomata committed Oct 20, 2023
    Configuration menu
    Copy the full SHA
    605246f View commit details
    Browse the repository at this point in the history
  4. feat(clang): add support for aarch64 clang

    This commit fixes some issues when using clang:
    - remove .directive .func which is not recognized by clang assembler;
    - make gtlb_page_tables as no data to avoid section type mismatch;
    - remove mov instructions with flexible second operand since ithey are not recognized by the clang assembler;
    
    Signed-off-by: Bruno Sa <bruno.vilaca.sa@gmail.com>
    ninolomata committed Oct 20, 2023
    Configuration menu
    Copy the full SHA
    09d1e95 View commit details
    Browse the repository at this point in the history