swiftlang/llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. This fork is used to manage Swift’s stable releases of Clang...

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 39 minutes ago
Added to GitGenius on July 26th, 2024
Created on October 17th, 2019
Open Issues & Pull Requests: 610 (+0)
Number of forks: 372
Total Stargazers: 1,240 (+0)
Total Subscribers: 29 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.7 days
Mean response time: 159.9 days
90th percentile: 482.0 days
Tracked items: 93

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 80% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. 57% of tracked open issues have had no activity in three months. Only 4% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 295
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,725 days
Stale 30+ days: 285
Stale 90+ days: 274

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 1
Events in 7 days: 1

Top labels

  • LLDB for Swift (356)
  • bug (328)
  • REPL (35)
  • Compiler (27)
  • Linux (26)
  • clang:bounds-safety (26)
  • Windows (11)
  • CompilerCrash (10)

Most active issues this week

Detailed Description

The swiftlang/llvm-project repository is Swift's maintained fork of the LLVM compiler infrastructure project. It serves the dual purpose of managing Swift's stable releases of Clang while providing compiler and toolchain support specifically for the Swift programming language. The repository contains the source code for LLVM, a comprehensive toolkit for constructing highly optimized compilers, optimizers, and runtime environments.

The repository encompasses multiple interconnected components that form a complete compiler ecosystem. At its core is LLVM itself, which provides all necessary tools, libraries, and header files for processing intermediate representations and converting them into object files. This includes an assembler, disassembler, bitcode analyzer, and bitcode optimizer. The Clang frontend component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode and subsequently into object files. Additional components include libc++, the C++ standard library implementation, and LLD, a linker designed for LLVM.

These labels indicate ongoing work in memory safety features, Swift debugging capabilities, and cross-platform compatibility.

The repository's contributor ecosystem shows concentrated activity among key maintainers. This concentrated activity pattern suggests a focused core team managing Swift-specific modifications to the LLVM infrastructure.

The repository is classified across multiple technical domains reflecting its comprehensive scope: it encompasses compiler technology, optimization, debugging tools including the LLDB debugger, runtime libraries, cross-platform support, and development infrastructure. The primary implementation language is LLVM, with significant C++ components throughout the codebase.

Swift's branching scheme for this fork is documented in apple-docs/AppleBranchingScheme.md, providing guidance on how Swift manages its relationship with the upstream LLVM project while maintaining its own stable releases. This fork-based approach allows Swift to integrate cutting-edge compiler improvements from LLVM while ensuring stability and compatibility for Swift's specific requirements. The repository serves as a critical piece of Swift's infrastructure, enabling the language to leverage LLVM's powerful optimization and code generation capabilities while maintaining Swift-specific enhancements and features.