History log of /external/clang/test/CodeGen/blocks-1.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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/blocks-1.c
830937bc1100fba7682f7c32c40512085870f50c 02-Dec-2010 Fariborz Jahanian <fjahanian@apple.com> IR Gen. part of API support for __block cxx
objects imported into blocks. //rdar://8594790.
Will have a test case coming (as well as one
sent to llvm test suite).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
a5728872c7702ddd09537c95bc3cbd20e1f2fb09 15-Dec-2009 Daniel Dunbar <daniel@zuster.org> Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
23afaad895486d4a9ea672f497b63ebc4c588955 17-Nov-2009 Daniel Dunbar <daniel@zuster.org> Don't #include <stdio.h> when tests don't need it, or use clang instead of clang-cc when they do.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
4fcfde4d5c8f25e40720972a5543d538a0dcb220 08-Nov-2009 Daniel Dunbar <daniel@zuster.org> Eliminate &&s in tests.
- 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
b7477cf6cf6cf4f132ba7beff42684e59bed15f4 10-Apr-2009 Mike Stump <mrs@apple.com> Fixup codegen for nested blocks that use copy/dispose in the inner
blocks, so that the outer blocks use it as well. Radar 6762279


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
4927abdc2e8c630117261fd9266304290b1cf32f 25-Mar-2009 Mike Stump <mrs@apple.com> Remove -f__block as codegen for __block variables should be solid.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
a803b0e6ca0d1c71a0b3f5d7380da8bbacf2f983 25-Mar-2009 Mike Stump <mrs@apple.com> Fixup codegen for block literals that bleed copy/dispose information
from previous block literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67696 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
d7d5f0223bd30dfd618762349c6209dd1d5ea3e6 24-Mar-2009 Daniel Dunbar <daniel@zuster.org> Rename clang to clang-cc.

Tests and drivers updated, still need to shuffle dirs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
a8b60c9bd8e992bed2096aa2c9982c3045e8247c 21-Mar-2009 Mike Stump <mrs@apple.com> Fixup codegen for nested block literals so that we generate
copy_helpers and dispose_helpers as necessary for them.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67453 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
f8575aa49b528e34617d7988f2105e492d4b2c1c 18-Mar-2009 Mike Stump <mrs@apple.com> Add codegen support for aggregate BlockDeclRefExprs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
7f28a9c37e67ae16396042ad9c085830969daf29 14-Mar-2009 Mike Stump <mrs@apple.com> Do up codegen for function static data and externs in functions in block
literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
1edf6b646ea161ce1193ba278ae88de82ff7114d 07-Mar-2009 Mike Stump <mrs@apple.com> codegen support for dispose helpers for block literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66320 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
0892099dbc640720400a1d9decd2733a09d733e5 07-Mar-2009 Mike Stump <mrs@apple.com> Codegen support for copy helpers for block literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66319 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
80bd206870d5e4f959d203ae03e2aa345f67cf89 06-Mar-2009 Mike Stump <mrs@apple.com> Testcase for last fix.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
1851b68aaa6717783609f366f5d87bbd0030f189 06-Mar-2009 Mike Stump <mrs@apple.com> Finish off __Block_byref_id_object_dispose codegen for block literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66247 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
45031c08c608e548ac12caf0547f89574e994b96 06-Mar-2009 Mike Stump <mrs@apple.com> More codegen support for the copy/dispose helpers for block literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66241 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
a4f668f3b7e03629066a01b04e415cb2b4655daf 06-Mar-2009 Mike Stump <mrs@apple.com> Framework for codegen for copy/dispose helpers.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
797b6327571f9d7b1c45404a56ddcbf9b9298ae8 05-Mar-2009 Mike Stump <mrs@apple.com> Add codegen support for __block variables to call _Block_object_dispose as necessary.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66117 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
58a851409298a53e1a6245cb24b8403ac09264ff 04-Mar-2009 Mike Stump <mrs@apple.com> Fixup __block codegen in nested block literals.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c
58919e1f982da4f57356afd38bc86b13d84199df 04-Mar-2009 Mike Stump <mrs@apple.com> Add __block codegen testcase. We introduce a temporary flag to enable
codegen, until such time as codegen is complete enough to turn on with
-fblocks.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66031 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGen/blocks-1.c