llvm-project/llvm
Nikita Popov 1bd33691cb [CoroElide] Remove fallback for frame layout determination
Only determine the frame layout based on dereferenceable and align
attributes, and remove the type-based fallback, which is incompatible
with opaque pointers. The dereferenceable attribute is required,
while the align attribute uses default alignment of 1 (commonly,
align 1 attributes do not get placed, relying on default alignment).

The CoroSplit pass producing the resume function adds the necessary
attributes in 7daed35911/llvm/lib/Transforms/Coroutines/CoroSplit.cpp (L840),
and their presence is checked in coro-debug.ll at least.

Differential Revision: https://reviews.llvm.org/D120988
2022-03-07 11:23:02 +01:00
..
benchmarks
bindings [SanitizerBounds] Add support for NoSanitizeBounds function 2022-03-01 18:47:02 +01:00
cmake [cmake] Pass /winsysroot explicitly 2022-03-04 22:27:59 -08:00
docs [llvm-cov] New parameters to set coverage coverage_watermark 2022-03-04 22:21:40 -08:00
examples [examples][BuildingAJIT] Use the right layer when adding code in Chapter 3. 2022-03-01 16:44:55 -08:00
include [ConstraintElimination] Remove dead variables when dropping constraints. 2022-03-07 09:04:07 +00:00
lib [CoroElide] Remove fallback for frame layout determination 2022-03-07 11:23:02 +01:00
projects
resources
runtimes Reapply "[cmake] Prefix gtest and gtest_main with "llvm_"." 2022-03-04 13:45:43 -08:00
test [CoroElide] Remove fallback for frame layout determination 2022-03-07 11:23:02 +01:00
tools [llvm-cov] New parameters to set coverage coverage_watermark 2022-03-04 22:21:40 -08:00
unittests [VP] Introducing VectorBuilder, the VP intrinsic builder 2022-03-07 10:02:07 +01:00
utils [gn build] Port 5f62156762 2022-03-07 09:08:13 +00:00
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT Remove Simon Atanasyan from the code owners list. MIPS Backend. 2022-03-07 13:17:08 +03:00
CREDITS.TXT [Docs] Add self to credits 2022-02-22 16:43:53 -08:00
LICENSE.TXT
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

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.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.