Commit Graph

16 Commits

Author SHA1 Message Date
Richard Smith d91ab1cef1 P0145R3 (C++17 evaluation order tweaks): consistently emit the LHS of array
subscripting before the RHS, regardless of which is the base and which is the
index.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@282453 91177308-0d34-0410-b5e6-96231b3b80d8
2016-09-26 23:49:47 +00:00
David Blaikie 51b2a6bc7d Account for calling convention specifiers in function definitions in IR test cases
Several tests wouldn't pass when executed on an armv7a_pc_linux triple
due to the non-default arm_aapcs calling convention produced on the
function definitions in the IR output. Account for this with the
application of a little regex.

Patch by Ying Yi.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240971 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-29 17:29:50 +00:00
David Blaikie 1d7abba8db Update Clang tests to handle explicitly typed load changes in LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@230795 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-27 21:19:58 +00:00
David Blaikie ca540a101d Update Clang tests to handle explicitly typed gep changes in LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@230783 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-27 19:18:17 +00:00
NAKAMURA Takumi 3b22dbc091 clang/test/CodeGen/captured-statements-nested.c: Tweak for -Asserts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220851 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-29 13:21:52 +00:00
Alexey Bataev 4ed019aabe Improved capturing variable-length array types in CapturedStmt.
An updated implemnentation of VLA types capturing based on previously committed solution for Lambdas.
This version captures the whole VLA type instead of particular variables which are part of VLA size expression and allows to use previusly calculated size of VLA type in captured regions. Required for OpenMP.
Differential Revision: http://reviews.llvm.org/D5099


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220850 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-29 12:21:55 +00:00
Alexey Bataev 08ca908da2 Second part of fix in CodeGen/captured-statements-nested.c
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212028 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 09:14:10 +00:00
Alexey Bataev b9aab956b5 Test fix
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212026 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 09:05:08 +00:00
Alexey Bataev 3418c55ba8 Fixed incompatibility in CodeGen/captured-statements-nested.c with MSVC
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212025 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 08:37:48 +00:00
Alexey Bataev ee4bfb2b1e Fixed CodeGen/captured-statements-nested.c test
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212024 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 08:17:11 +00:00
Alexey Bataev f8b114f898 Disable CodeGen/captured-statements-nested.c
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212018 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 05:07:42 +00:00
Alexey Bataev 2723610c45 Fixed CodeGen/captured-statements-nested.c test
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212016 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 05:02:50 +00:00
Alexey Bataev 35ab22a236 Disable CodeGen/captured-statements-nested.c
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212014 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 03:30:41 +00:00
Alexey Bataev 2b070d7562 Temp XFAIL CodeGen/captured-statements-nested.c to fix the test
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212013 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 03:14:43 +00:00
Alexey Bataev 8b7ce32597 Using of variable length arrays in captured statements and OpenMP constructs.
Differential Revision: http://reviews.llvm.org/D4067


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212010 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-30 02:55:54 +00:00
Ben Langmuir 524387ae3d CodeGen for CapturedStmts
EmitCapturedStmt creates a captured struct containing all of the captured
variables, and then emits a call to the outlined function.  This is similar in
principle to EmitBlockLiteral.

GenerateCapturedFunction actually produces the outlined function.  It is based
on GenerateBlockFunction, but is much simpler.  The function type is determined
by the parameters that are in the CapturedDecl.

Some changes have been added to this patch that were reviewed as part of the
serialization patch and moving the parameters to the captured decl.

Differential Revision: http://llvm-reviews.chandlerc.com/D640


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181536 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-09 19:17:11 +00:00