Skip to content

c3lang/tilde-backend

 
 

Repository files navigation

TildeBackend (Tilde or TB for short)

  TB is compiler backend in the form of a reasonable C library. This is built as an alternative to other larger compiler toolchains while providing the optimizations, machine code generation and object file export functionality necessary for the development of compilers.

  # Roadmap

    Code generation:
      We're starting with x64 but will be moving focus to Aarch64 soon.

    Optimizer:
      It's almost complete with all the -O1 level passes (mostly missing inlining).
      After that we can move towards -O2 level stuff (the goal is to compete with
      LLVM so we need to be a bit ambitious).

    Debug info:
      Codeview support and DWARF has not yet been started, there's plans on making a
      new debug info format eventually.

    Output targets:
     We currently have basic ELF64, COFF64, some current work is being done for
     PE and Macho-O. We got exporting object files but wanna go further because
     linkers ain't supposed to be separate programs.

  # Compiling

    You'll need to install Clang or GCC (MSVC build script isn't available right
    now) and Make.

    ```
      git clone https://github.com/RealNeGate/tilde-backend.git
      cd tilde-backend
      git submodule update --init --recursive
      make -j
    ```

    If you wish to compile with optimizations add OPT=2 to the args.

  # Getting Started

    Coming soon

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 97.0%
  • C++ 1.4%
  • Lua 1.3%
  • Other 0.3%