Fork of llvm with experimental commits and workarounds for RPCS3
Go to file
Dylan McKay 5892dcede7 [AVR] Fix the 'avr-tiny.ll' and 'avr25.ll' subtarget feature tests
When these tests were originally written, the middle end would introduce
an unnecessary copy from r24:r23->GPR16->r24:r23, and these tests
mistakenly relied on it.

The most optimal codegen for the functions in the test cases before this patch
would be NOPs. This is because the first i16 argument always gets the same register
allocation as an i16 return value in the AVR calling convention.

These tests broke in r362963 when the codegen was improved and the
redundant copy was eliminated. After this, the test functions
were lowered to their optimal form - a 'ret' and nothing else.

This patch prepends an extra i16 operand to each of the test functions
so that a 16-bit copy must be inserted for the program to be correct.

llvm-svn: 363131
2019-06-12 08:31:07 +00:00
benchmarks
bindings [bindings/go] Add wrappers for atomic operations. 2019-06-09 10:06:35 +00:00
cmake Build with _XOPEN_SOURCE defined on AIX 2019-06-07 15:45:25 +00:00
docs [docs] Add "GNU binutils Replacements" section to command guide 2019-06-11 21:13:01 +00:00
examples
include [Analysis] add isSplatValue() for vectors in IR 2019-06-11 22:25:18 +00:00
lib [AArch64] Merge globals when optimising for size 2019-06-12 08:28:35 +00:00
projects
resources
runtimes Setup testing target dependencies for default runtimes 2019-06-11 00:25:57 +00:00
test [AVR] Fix the 'avr-tiny.ll' and 'avr25.ll' subtarget feature tests 2019-06-12 08:31:07 +00:00
tools [llvm-dwarfdump] Simplify --ignore-case help text and documentation 2019-06-11 13:51:18 +00:00
unittests [Analysis] add isSplatValue() for vectors in IR 2019-06-11 22:25:18 +00:00
utils lld-link: Reject more than one resource .obj file 2019-06-11 15:22:28 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes
.gitignore gitignore: Ignore Qt Creator project configuration files. NFC 2019-06-12 08:28:31 +00:00
CMakeLists.txt Build with _XOPEN_SOURCE defined on AIX 2019-06-07 15:45:25 +00:00
CODE_OWNERS.TXT
configure
CREDITS.TXT [test commit] Add my name to the CREDITS.TXT 2019-05-27 07:48:28 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
README.txt
RELEASE_TESTERS.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.