mirror-llvm-project/clang
Matt Arsenault 3c3a18e239
clang: Store vendor GPU kinds in OffloadArch instead of re-listing GPUs (#213362)
OffloadArch was a flat enum that hand-duplicated every AMDGPU and NVPTX
target, plus a few edge cases. This was yet another place that needed
updating every time a new target is added, which should now be avoided.
Replace with a tagged union-like scheme.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply@anthropic.com>
2026-08-01 06:14:04 +00:00
..
bindings [libclang/python] Remove CompletionString.AvailabilityKindCompat (#210682) 2026-07-25 12:38:13 +09:00
cmake [CMake][Fuchsia] Compile runtimes with -ffuchsia-api-level (#211753) 2026-07-29 10:59:32 -07:00
docs [Clang][Sema] Synthesize a memcpy body for defaulted union assignment (#206579) 2026-07-31 15:49:40 -05:00
examples [PassManager] Make passes inherit from RequiredPassInfoMixin/OptionalPassInfoMixin (#192120) 2026-05-06 10:00:07 -07:00
include clang: Store vendor GPU kinds in OffloadArch instead of re-listing GPUs (#213362) 2026-08-01 06:14:04 +00:00
lib clang: Store vendor GPU kinds in OffloadArch instead of re-listing GPUs (#213362) 2026-08-01 06:14:04 +00:00
runtime
test clang: Store vendor GPU kinds in OffloadArch instead of re-listing GPUs (#213362) 2026-08-01 06:14:04 +00:00
tools Add option to format a whole file using git-clang-format (#204336) 2026-07-31 22:22:14 -07:00
unittests clang: Store vendor GPU kinds in OffloadArch instead of re-listing GPUs (#213362) 2026-08-01 06:14:04 +00:00
utils [CIR] Implement fenv lowering to constrained intrinsic calls (#213105) 2026-07-31 11:21:35 -07:00
www [Clang] Implement P3658R1 (#212131) 2026-07-28 07:46:23 +02:00
.clang-format
.clang-tidy
.gitignore
AreaTeamMembers.txt
CMakeLists.txt Add build option CLANG_INCLUDE_EXAMPLES (#187317) 2026-07-11 04:27:34 +02:00
INSTALL.txt
LICENSE.TXT
Maintainers.md [clang][doc] Use my private email for now (#213058) 2026-07-31 06:24:07 +00:00
NOTES.txt
README.md

C language Family Front-end

Welcome to Clang.

This is a compiler front-end for the C family of languages (C, C++ and Objective-C) which is built as part of the LLVM compiler infrastructure project.

Unlike many other compiler frontends, Clang is useful for a number of things beyond just compiling code: we intend for Clang to be host to a number of different source-level tools. One example of this is the Clang Static Analyzer.

If you're interested in more (including how to build Clang) it is best to read the relevant websites. Here are some pointers: