| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[amdgpu-arch] Guard hsa.h with __has_include This patch is suppose to fix the issue of hsa.h not found. Issue was reported in D99949 Reviewed By: JonChesterfield Differential Revision: https://reviews.llvm.org/D102067 | 5 年前 | |
[Support] Don't include VirtualFileSystem.h in CommandLine.h CommandLine.h is indirectly included in ~50% of TUs when building clang, and VirtualFileSystem.h is large. (Already remarked by jhenderson on D70769.) No behavior change. Differential Revision: https://reviews.llvm.org/D100957 | 5 年前 | |
[NFC] Reordering parameters in getFile and getFileOrSTDIN In future patches I will be setting the IsText parameter frequently so I will refactor the args to be in the following order. I have removed the FileSize parameter because it is never used. static ErrorOr<std::unique_ptr<MemoryBuffer>> getFile(const Twine &Filename, bool IsText = false, bool RequiresNullTerminator = true, bool IsVolatile = false); static ErrorOr<std::unique_ptr<MemoryBuffer>> getFileOrSTDIN(const Twine &Filename, bool IsText = false, bool RequiresNullTerminator = true); static ErrorOr<std::unique_ptr<MB>> getFileAux(const Twine &Filename, uint64_t MapSize, uint64_t Offset, bool IsText, bool RequiresNullTerminator, bool IsVolatile); static ErrorOr<std::unique_ptr<WritableMemoryBuffer>> getFile(const Twine &Filename, bool IsVolatile = false); Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D99182 | 5 年前 | |
[CMake] Use PRIVATE in target_link_libraries for executables We currently use target_link_libraries without an explicit scope specifier (INTERFACE, PRIVATE or PUBLIC) when linking executables. Dependencies added in this way apply to both the target and its dependencies, i.e. they become part of the executable's link interface and are transitive. Transitive dependencies generally don't make sense for executables, since you wouldn't normally be linking against an executable. This also causes issues for generating install export files when using LLVM_DISTRIBUTION_COMPONENTS. For example, clang has a lot of LLVM library dependencies, which are currently added as interface dependencies. If clang is in the distribution components but the LLVM libraries it depends on aren't (which is a perfectly legitimate use case if the LLVM libraries are being built static and there are therefore no run-time dependencies on them), CMake will complain about the LLVM libraries not being in export set when attempting to generate the install export file for clang. This is reasonable behavior on CMake's part, and the right thing is for LLVM's build system to explicitly use PRIVATE dependencies for executables. Unfortunately, CMake doesn't allow you to mix and match the keyword and non-keyword target_link_libraries signatures for a single target; i.e., if a single call to target_link_libraries for a particular target uses one of the INTERFACE, PRIVATE, or PUBLIC keywords, all other calls must also be updated to use those keywords. This means we must do this change in a single shot. I also fully expect to have missed some instances; I tested by enabling all the projects in the monorepo (except dragonegg), and configuring both with and without shared libraries, on both Darwin and Linux, but I'm planning to rely on the buildbots for other configurations (since it should be pretty easy to fix those). Even after this change, we still have a lot of target_link_libraries calls that don't specify a scope keyword, mostly for shared libraries. I'm thinking about addressing those in a follow-up, but that's a separate change IMO. Differential Revision: https://reviews.llvm.org/D40823 llvm-svn: 319840 | 8 年前 | |
[libclang] add supporting for indexing/visiting C++ concepts This commit builds upon recently added indexing support for C++ concepts from https://reviews.llvm.org/D124441 by extending libclang to support indexing and visiting concepts, constraints and requires expressions as well. Differential Revision: https://reviews.llvm.org/D126031 | 4 年前 | |
[syntax] Introduce a TokenManager interface. TokenManager defines Token interfaces for the clang syntax-tree. This is the level of abstraction that the syntax-tree should use to operate on Tokens. It decouples the syntax-tree from a particular token implementation (TokenBuffer previously). This enables us to use a different underlying token implementation for the syntax Leaf node -- in clang pseudoparser, we want to produce a syntax-tree with its own pseudo::Token rather than syntax::Token. Differential Revision: https://reviews.llvm.org/D128411 | 3 年前 | |
clang-{tools,unittests}: Stop using SourceManager::getBuffer, NFC Update clang-tools-extra, clang/tools, clang/unittests to migrate from SourceManager::getBuffer, which returns an always dereferenceable MemoryBuffer*, to getBufferOrNone or getBufferOrFake, both of which return a MemoryBufferRef, depending on whether the call site was checking for validity of the buffer. No functionality change intended. Differential Revision: https://reviews.llvm.org/D89416 | 5 年前 | |
[clang-extdef-mapping] Directly process .ast files When doing CTU analysis setup you pre-compile .cpp to .ast and then you run clang-extdef-mapping on the .cpp file as well. This is a pretty slow process since we have to recompile the file each time. With this patch you can now run clang-extdef-mapping directly on the .ast file. That saves a lot of time. I tried this on llvm/lib/AsmParser/Parser.cpp and running extdef-mapping on the .cpp file took 5.4s on my machine. While running it on the .ast file it took 2s. This can save a lot of time for the setup phase of CTU analysis. Reviewed By: martong Differential Revision: https://reviews.llvm.org/D128704 | 3 年前 | |
clang-format-vs : Fix Unicode formatting Use UTF-8 for communication with clang-format and convert the replacements offset/length to characters position/count. Internally VisualStudio.Text.Editor.IWpfTextView use sequence of Unicode characters encoded using UTF-16 and use characters position/count for manipulating text. Resolved "Error while running clang-format: Specified argument was out of the range of valid values. Parameter name: replaceSpan". Patch by empty2fill! Differential revision: https://reviews.llvm.org/D70633 | 6 年前 | |
[clang-format] Fix an assertion failure on -lines=0:n Also fixed the error message for start line > end line and added test cases. Fixes #56438. Differential Revision: https://reviews.llvm.org/D129348 | 3 年前 | |
Revert "[lldb/Fuzzer] Add fuzzer for expression evaluator" This reverts commit b797834748f1954950880bf50fb78abedd4494e6, since it breaks building Clang: https://reviews.llvm.org/D129377 | 3 年前 | |
[CGDebugInfo] Access the current working directory from the VFS ...instead of calling llvm::sys::fs::current_path() directly. Differential Revision: https://reviews.llvm.org/D130443 | 3 年前 | |
[cmake] Slight fix ups to make robust to the full range of GNUInstallDirs See https://cmake.org/cmake/help/v3.14/module/GNUInstallDirs.html#result-variables for CMAKE_INSTALL_FULL_* Reviewed By: sebastian-ne Differential Revision: https://reviews.llvm.org/D130545 | 3 年前 | |
[clang][cmake] Use GNUInstallDirs to support custom installation dirs I am breaking apart D99484 so the cause of build failures is easier to understand. Differential Revision: https://reviews.llvm.org/D117419 | 4 年前 | |
Revert "[clang-offload-bundler] Library-ize ClangOffloadBundler" This reverts commit 8348c4095600ec2c0beee293267832799d2ebee3. | 3 年前 | |
[OffloadPackager] Use appropriate kind for LTO bitcode Summary: Currently we just check the extension to set the image kind. This incorrectly labels the .o files created during LTO as object files. This patch simply adds a check for the bitcode magic bytes instead. | 3 年前 | |
[clang-offload-wrapper] Disabled ELF offload notes embedding by default. This change-set puts 93d08acaacec951dbb302f77eeae51974985b6b2 functionality under -add-omp-offload-notes switch that is OFF by default. CUDA toolchain is not able to handle ELF images with LLVMOMPOFFLOAD notes for unknown reason (see https://reviews.llvm.org/D99551#2950272). I disable the ELF notes embedding until the CUDA issue is triaged and resolved. Differential Revision: https://reviews.llvm.org/D108246 | 4 年前 | |
Use ManagedStatic and lazy initialization of cl::opt in libSupport to make it free of global initializer We can build it with -Werror=global-constructors now. This helps in situation where libSupport is embedded as a shared library, potential with dlopen/dlclose scenario, and when command-line parsing or other facilities may not be involved. Avoiding the implicit construction of these cl::opt can avoid double-registration issues and other kind of behavior. Reviewed By: lattner, jpienaar Differential Revision: https://reviews.llvm.org/D105959 | 4 年前 | |
Remove unneeded cl::ZeroOrMore for cl::opt/cl::list options | 4 年前 | |
Revert "[clang-repl] Support destructors of global objects." This reverts commit 9de8b05bfe0de2915d2443d06159396c5f9d389f. | 3 年前 | |
[clang][deps] Silence a GCC warning about missing returns after a fully covered switch. NFC. | 3 年前 | |
[CMake] Don't use -Bsymbolic-functions for MinGW targets This is an ELF specific option which isn't supported for Windows/MinGW targets, even if the MinGW linker otherwise uses an ld.bfd like linker interface. Differential Revision: https://reviews.llvm.org/D105148 | 4 年前 | |
[clang] Use portable "#!/usr/bin/env bash" shebang for tools and utils. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D110041 | 4 年前 | |
[clang][tablegen] adds human documentation to WarningOption Building on D126796, this commit adds the infrastructure for being able to print out descriptions of what each warning does. Differential Revision: https://reviews.llvm.org/D126832 | 3 年前 | |
[Clang] Add a new clang option "-ftime-trace=<value>" The time profiler traces the stages during the clang compile process. Each compiling stage of a single source file corresponds to a separately .json file which holds its time tracing data. However, the .json files are stored in the same path/directory as its corresponding stage's '-o' option. For example, if we compile the "demo.cc" to "demo.o" with option "-o /tmp/demo.o", the time trace data file path is "/tmp/demo.json". A typical c++ project can contain multiple source files in different path, but all the json files' paths can be a mess. The option "-ftime-trace=<value>" allows you to specify where the json files should be stored. This allows the users to place the time trace data files of interest in the desired location for further data analysis. Usage: - clang/clang++ -ftime-trace ... - clang/clang++ -ftime-trace=the-directory-you-want ... - clang/clang++ -ftime-trace=the-directory-you-want/ ... - clang/clang++ -ftime-trace=the-full-file-path-you-want ... Differential Revision: https://reviews.llvm.org/D128048 | 3 年前 | |
[clangd] NFC: Move stdlib headers handling to Clang This will allow moving the IncludeCleaner library essentials to Clang and decoupling them from the majority of clangd. The patch itself just moves the code, it doesn't change existing functionality. Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D119130 | 4 年前 | |
[NFC] Fix a misleading comment CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION | 3 年前 | |
[scan-build-py] Fix exception on shutdown with sarif-html output format When running scan-build-py's analyze-build script with output format set to sarif & html it wants to print a message on how to look at the defects mentioning the directory name twice. But the path argument was only given once to the logging function, causing "TypeError: not enough arguments for format string" exception. Differential Revision: https://reviews.llvm.org/D126974 | 3 年前 | |
[clang] Update Clang version from 14 to 15 in scan-build.1. Similar to D110763. | 3 年前 | |
[clang][cmake] Use GNUInstallDirs to support custom installation dirs I am breaking apart D99484 so the cause of build failures is easier to understand. Differential Revision: https://reviews.llvm.org/D117419 | 4 年前 | |
[Clang] Introduce clang-offload-packager tool to bundle device files In order to do offloading compilation we need to embed files into the host and create fatbainaries. Clang uses a special binary format to bundle several files along with their metadata into a single binary image. This is currently performed using the -fembed-offload-binary option. However this is not very extensibile since it requires changing the command flag every time we want to add something and makes optional arguments difficult. This patch introduces a new tool called clang-offload-packager that behaves similarly to CUDA's fatbinary. This tool takes several input files with metadata and embeds it into a single image that can then be embedded in the host. Reviewed By: tra Differential Revision: https://reviews.llvm.org/D125165 | 4 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 8 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 6 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 |