Go to file
Craig Topper 784929d045 Implementation of asm-goto support in LLVM
This patch accompanies the RFC posted here:
http://lists.llvm.org/pipermail/llvm-dev/2018-October/127239.html

This patch adds a new CallBr IR instruction to support asm-goto
inline assembly like gcc as used by the linux kernel. This
instruction is both a call instruction and a terminator
instruction with multiple successors. Only inline assembly
usage is supported today.

This also adds a new INLINEASM_BR opcode to SelectionDAG and
MachineIR to represent an INLINEASM block that is also
considered a terminator instruction.

There will likely be more bug fixes and optimizations to follow
this, but we felt it had reached a point where we would like to
switch to an incremental development model.

Patch by Craig Topper, Alexander Ivchenko, Mikhail Dvoretckii

Differential Revision: https://reviews.llvm.org/D53765

llvm-svn: 353563
2019-02-08 20:48:56 +00:00
clang Pass the base element type of an array type to the visit method instead 2019-02-08 19:46:53 +00:00
clang-tools-extra [clang-tidy] Don't use assignment for value-initialized enums 2019-02-08 19:44:42 +00:00
compiler-rt Fix Die() after pthread_exit call on macOS 2019-02-08 20:43:26 +00:00
debuginfo-tests Set config.lit_tools_dir, which is needed by lit.llvm.initialize. 2018-11-06 21:54:27 +00:00
libclc Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
libcxx Add static_asserts to tuple's comparison operators to enforce the requirement that the tuples be the same size. See PR39183 for an example where we give unexpected results for this bad input case. With this change, we will reject it at compile-time 2019-02-07 19:03:48 +00:00
libcxxabi [CMake] Support compiler-rt builtins library in tests 2019-02-05 19:50:47 +00:00
libunwind [CMake] Support compiler-rt builtins library in tests 2019-02-05 19:50:47 +00:00
lld [LLD][ELF]Add test for missing thin archive member 2019-02-08 10:31:38 +00:00
lldb [opaque pointer types] Update calls to CreateCall to pass the function 2019-02-08 19:30:46 +00:00
llgo Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
llvm Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
openmp Guard a feature that unsupported by old GCC 2019-02-08 17:15:50 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly [opaque pointer types] Update calls to CreateCall to pass the function 2019-02-08 19:30:46 +00:00
pstl Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +00:00
README.md

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.