llvm-project/clang/test
Alexander Potapenko 1b5e38a6c9 [CodeGen]: don't treat structures returned in registers as memory inputs
Summary:
The "=r" output constraint for a structure variable passed to inline asm
shouldn't be converted to "=*r", as this changes the asm directive
semantics and prevents DSE optimizations.
Instead, preserve the constraints and return such structures as integers
of corresponding size, which are converted back to structures when
storing the result.

Fixes PR42672.

Subscribers: cfe-commits

Tags: #clang

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

llvm-svn: 370335
2019-08-29 11:21:41 +00:00
..
ARCMT
AST [ASTDump] Add is_anonymous to VisitCXXRecordDecl 2019-08-12 17:07:49 +00:00
ASTMerge Give the 'signed/unsigned wchar_t' extension a warning flag, and follow 2019-07-29 20:00:46 +00:00
Analysis [Analyzer] Iterator Checkers - Make range errors and invalidated access fatal 2019-08-29 09:35:47 +00:00
CXX PR40674: fix assertion failure if a structured binding declaration has a 2019-08-24 01:23:57 +00:00
ClangScanDeps clang-scan-deps: do not spawn threads when LLVM_ENABLE_THREADS is disabled 2019-08-13 00:36:35 +00:00
CodeCompletion Re-land "[CodeComplete] Improve overload handling for C++ qualified and ref-qualified methods." 2019-06-10 15:17:52 +00:00
CodeGen [CodeGen]: don't treat structures returned in registers as memory inputs 2019-08-29 11:21:41 +00:00
CodeGenCUDA IR: print value numbers for unnamed function arguments 2019-08-03 14:28:34 +00:00
CodeGenCXX Fix a passing XFAIL test 2019-08-28 22:38:36 +00:00
CodeGenCoroutines Remove unreachable blocks before splitting a coroutine. 2019-08-14 03:54:13 +00:00
CodeGenObjC Add SVE opaque built-in types 2019-08-09 08:52:54 +00:00
CodeGenObjCXX IR: print value numbers for unnamed function arguments 2019-08-03 14:28:34 +00:00
CodeGenOpenCL AMDGPU: Always emit amdgpu-flat-work-group-size 2019-08-27 19:25:40 +00:00
CodeGenOpenCLCXX Make the CXXABIs respect the target's default calling convention. 2019-07-26 12:36:12 +00:00
Coverage Re-check in clang support gun asm goto after fixing tests. 2019-06-03 15:57:25 +00:00
CoverageMapping Remove cache for macro arg stringization 2019-07-30 17:58:22 +00:00
Driver [Test][Time profiler] Fix test for python3 2019-08-29 06:49:05 +00:00
FixIt [Sema] Don't warn on printf('%hd', [char]) (PR41467) 2019-08-23 18:01:57 +00:00
Format [clang-format][tests] Explicitly specify style in some tests 2019-07-12 15:56:18 +00:00
Frontend Reland "[ARM] push LR before __gnu_mcount_nc" 2019-08-16 23:30:16 +00:00
Headers [PowerPC] [Clang] Port SSE3, SSSE3 and SSE4 intrinsics to PowerPC 2019-08-09 03:39:55 +00:00
Import [ASTImporter] Copy Argument Passing Restrictions setting when importing a CXXRecordDecl definition 2019-04-26 18:51:28 +00:00
Index [preprocessor] Add an opportunity to retain excluded conditional blocks 2019-08-27 22:15:32 +00:00
Integration
InterfaceStubs [clang][ifs] Dropping older experimental interface stub formats. 2019-08-22 23:44:34 +00:00
Layout P0840R2: support for [[no_unique_address]] attribute 2019-06-20 20:44:45 +00:00
Lexer Try fixing CRLF issues in Git with [clang-scan-deps] Minimizer: Correctly handle multi-line content with CR+LF line endings 2019-08-28 15:14:37 +00:00
Misc [NewPM][PassInstrumentation] IR printing support from clang driver 2019-08-14 07:11:09 +00:00
Modules [Modules] Fix rebuilding an updated module for each of its consumers. 2019-08-28 23:31:32 +00:00
OpenMP [OPENMP][Analysis] Add analysis of the map clauses. 2019-08-28 14:55:08 +00:00
PCH Diagnose use of _Thread_local as an extension when not in C11 mode. 2019-08-26 19:44:07 +00:00
Parser Diagnose _Bool as a C99 extension. 2019-08-27 20:33:05 +00:00
Preprocessor Allow standards-based attributes to have leading and trailing underscores. 2019-08-15 18:35:44 +00:00
Profile [PGO] Fix bolt failures from r367628 2019-08-02 07:21:50 +00:00
Refactor [Tooling] Added DeclStmtClass to ExtractionSemicolonPolicy 2019-08-14 13:37:39 +00:00
Rewriter
Sema Replace some custom C11 extension warnings with the generic warning. 2019-08-27 14:41:39 +00:00
SemaCUDA Renamed and changed the wording of warn_cconv_ignored 2019-07-17 20:41:26 +00:00
SemaCXX Diagnose both _Complex and _Imaginary as C99 extensions. 2019-08-27 19:15:24 +00:00
SemaObjC [ObjC] Fix type checking for qualified id block parameters. 2019-08-28 00:25:06 +00:00
SemaObjCXX If capturing a variable fails, add a capture anyway (and mark it 2019-05-28 23:09:44 +00:00
SemaOpenCL [OpenCL] Fix diagnosing enqueue_kernel call with too few args 2019-08-29 10:21:06 +00:00
SemaOpenCLCXX Quote the token being diagnosed for C11 extensions. 2019-08-27 13:47:51 +00:00
SemaTemplate Improve behavior in the case of stack exhaustion. 2019-08-26 18:18:07 +00:00
TableGen
Templight
Tooling Recommit r363298 "[lit] Disable test on darwin when building shared libs." 2019-06-15 20:09:54 +00:00
Unit
VFS Introduce FileEntryRef and use it when handling includes to report correct dependencies 2019-08-22 18:15:50 +00:00
clang-rename
.clang-format
CMakeLists.txt [Clang][Bundler] Use llvm-objcopy for creating fat object files 2019-08-26 19:48:43 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg.py Improve behavior in the case of stack exhaustion. 2019-08-26 18:18:07 +00:00
lit.site.cfg.py.in Improve behavior in the case of stack exhaustion. 2019-08-26 18:18:07 +00:00
make_test_dirs.pl