llvm with tablegen backend for capstone disassembler
Go to file
River Riddle a514c30a7c
[lldb] Add windows support for LLDB_EXPORT_ALL_SYMBOLS (#67628)
LLDB_EXPORT_ALL_SYMBOLS is useful when building out-of-tree plugins and
extensions that rely on LLDB's internal symbols. For example, this is
how the Mojo language provides its REPL and debugger support.

Supporting this on windows is kind of tricky because this is normally
expected to be done using dllexport/dllimport, but lldb uses these with
the public api. This PR takes an approach similar to what LLVM does with
LLVM_EXPORT_SYMBOLS_FOR_PLUGINS, and what chromium does for
[abseil](253d14e20f/third_party/abseil-cpp/generate_def_files.py),
and uses a python script to extract the necessary symbols by looking at
the symbol table for the various lldb libraries.
2023-09-29 10:33:11 -07:00
.ci [ci] Diff against main when determining what files have changed for pre-commit CI (#67743) 2023-09-29 10:24:48 -04:00
.github Remove 'vectorizers' label from PR labeler (#67810) 2023-09-29 19:27:22 +04:00
bolt [BOLT] Update for rename of MemLifetimePolicy in e994f84c8a. 2023-09-28 10:42:58 -07:00
clang [clang] NFCI: Use FileEntryRef in SourceManager::getMemoryBufferForFileOr{None,Fake}() 2023-09-29 10:31:42 -07:00
clang-tools-extra [clang] NFCI: Use FileEntryRef in ASTReader::GetHeaderFileInfo() 2023-09-29 09:07:13 -07:00
cmake [CMake] Switch the CMP0091 policy (MSVC_RUNTIME_LIBRARY) to the new behaviour 2023-07-17 09:59:05 +03:00
compiler-rt [AArch64] Fix FMV ifunc resolver usage on old Android APIs. Rename internal compiler-rt FMV functions. 2023-09-29 17:10:48 +01:00
cross-project-tests [Dexter] Associate parser errors with correct file (#66765) 2023-09-19 14:16:17 +01:00
flang [OpenMP] Introduce the initial support for OpenMP kernel language (#66844) 2023-09-29 13:11:09 -04:00
libc [libc] Fix unused variable in fputc test (#67830) 2023-09-29 12:31:40 -04:00
libclc libclc: Fix signed integer underflow in abs_diff 2023-08-31 14:28:16 +01:00
libcxx [libcxx] <experimental/simd> Add _LIBCPP_HIDE_FROM_ABI to internal br… (#66977) 2023-09-29 16:32:54 +02:00
libcxxabi [libc++][lit] Allow overriding the executor for tests (#66545) 2023-09-26 15:19:31 +01:00
libunwind [libunwind][nfc] Avoid type warning of debug printf (#67390) 2023-09-28 18:02:41 +09:00
lld [lld] Fix REQUIRES line in new test 2023-09-27 19:55:16 -04:00
lldb [lldb] Add windows support for LLDB_EXPORT_ALL_SYMBOLS (#67628) 2023-09-29 10:33:11 -07:00
llvm [StandardInstrumentations] Ignore VerifierPass/PrintModulePass when printing IR (#67730) 2023-09-29 10:31:29 -07:00
llvm-libgcc [llvm-libgcc][CMake] Refactor llvm-libgcc (#65455) 2023-09-18 22:56:03 -07:00
mlir [mlir][SME] Re-order patterns alphabetically (nfc) 2023-09-29 16:54:47 +00:00
openmp [OpenMP] Fix a potential memory buffer overflow (#67252) 2023-09-29 12:41:32 -04:00
polly Move CallInst::CreateFree to IRBuilderBase 2023-09-19 12:04:17 +02:00
pstl Clear release notes for 18.x 2023-07-25 13:58:49 +02:00
runtimes [llvm-libgcc][CMake] Refactor llvm-libgcc (#65455) 2023-09-18 22:56:03 -07:00
third-party [gtest] Disable new posix::FOpen Windows implementation for now 2023-09-28 21:11:09 +02:00
utils [bazel] Add missing deps. 2023-09-29 09:24:50 +02:00
.arcconfig
.arclint
.clang-format
.clang-tidy Add -misc-use-anonymous-namespace to .clang-tidy 2023-05-06 02:33:20 +03:00
.git-blame-ignore-revs Revert "[mlir][spirv] Add D155747 to .git-blame-ignore-revs" 2023-07-21 10:59:16 -04:00
.gitignore Revert accidental .gitignore change from 9b7763821a 2023-09-07 22:42:05 -07:00
.mailmap Add entry to mailmap 2023-04-25 23:15:07 -07:00
CODE_OF_CONDUCT.md [llvm] Add CODE_OF_CONDUCT.md (#65816) 2023-09-09 10:55:31 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md to remove the not about not accepting PR 2023-09-10 15:21:06 -07:00
LICENSE.TXT
README.md
SECURITY.md

The LLVM Compiler Infrastructure

Welcome to the LLVM project!

This repository contains the source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and run-time environments.

The LLVM project has multiple components. The core of the project is itself called "LLVM". This contains all of the tools, libraries, and header files needed to process intermediate representations and convert them into object files. Tools include an assembler, disassembler, bitcode analyzer, and bitcode optimizer.

C-like languages use the Clang frontend. This component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode -- and from there into object files, using LLVM.

Other components include: the libc++ C++ standard library, the LLD linker, and more.

Getting the Source Code and Building LLVM

Consult the Getting Started with LLVM page for information on building and running LLVM.

For information on how to contribute to the LLVM project, please take a look at the Contributing to LLVM guide.

Getting in touch

Join the LLVM Discourse forums, Discord chat, or #llvm IRC channel on OFTC.

The LLVM project has adopted a code of conduct for participants to all modes of communication within the project.