4904bf4e84cfb48080270ebaa9005327f18ab0e5 |
|
26-Jun-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
block literal irgen: several improvements on naming block literal helper functions. All helper functions (global and locals) use block_invoke as their prefix. Local literal helper names are prefixed by their enclosing mangled function names. Blocks in non-local initializers (e.g. a global variable or a C++11 field) are prefixed by their mangled variable name. The descriminator number added to end of the name starts off with blank (for first block) and _<N> (for the N+2-th block). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159206 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
9cbe4f0ba01ec304e1e3d071c071f7bca33631c0 |
|
09-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
clang side to match the LLVM IR type system rewrite patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134831 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
6b5a61b6dc400027fd793dcadceeb9da944a37ea |
|
07-Feb-2011 |
John McCall <rjmccall@apple.com> |
A few more tweaks to the blocks AST representation: - BlockDeclRefExprs always store VarDecls - BDREs no longer store copy expressions - BlockDecls now store a list of captured variables, information about how they're captured, and a copy expression if necessary With that in hand, change IR generation to use the captures data in blocks instead of walking the block independently. Additionally, optimize block layout by emitting fields in descending alignment order, with a heuristic for filling in words when alignment of the end of the block header is insufficient for the most aligned field. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125005 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
1257bc6ee76b931e3f8e51a88298b95379963d24 |
|
10-Jan-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add unnamed_addr when creating artificial string globals. For example, in static const char foo[] = "foo"; static const char *bar = "bar"; the global created to hold "bar" will have it, but foo will not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
5c8e13ffa8ab3d9d6f17717f9ce679382fc2ba5d |
|
15-Nov-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Restore these tests. I think I fixed the problem. We shall see. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119158 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
3d56065cc3c0213c17da6106af9d4d6ee07d2ba8 |
|
14-Nov-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Removing these test till redo them so they won't depend on the built compiler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
573e59de571c381522ff244680b4167a42f18bf6 |
|
23-Feb-2010 |
Blaine Garst <blaine@apple.com> |
fix buildbot failure on windows by slightly trimming test output to ignore temporary name git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|
2a7eb28397148079cbc8e54e8a3871ef01c4f4bc |
|
23-Feb-2010 |
Blaine Garst <blaine@apple.com> |
Unconditionally support block introspection data in a new field at the end of the block descriptor field. This field is the ObjC style @encode signature of the implementation function, and was to this point conditionally provided in the block literal data structure. That provisional support is removed. Additionally, eliminate unused enumerations for the block literal flags field. The first shipping ABI unconditionally set (1<<29) but this bit is unused by the runtime, so the second ABI will unconditionally have (1<<30) set so that the runtime can in fact distinguish whether the additional data is present or not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocksignature.c
|