aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/decl.c
AgeCommit message (Collapse)Author
2011-08-24Make constant aggregate constant initializers private linkage.Eric Christopher
After talking with John making this the case for all of these is the right way to go. Fixes rdar://9804564 and PR10414 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138418 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-09clang side to match the LLVM IR type system rewrite patch.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134831 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-27Add unnamed_addr to internal globals which are only used as an operand to ↵Eli Friedman
memcpy. (Spotted by looking at IR.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132226 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-06Revert r126422 "Use private linkage to avoid symbol conflicts inDouglas Gregor
corner cases like the one in PR9301." which caused PR9416. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127136 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-24Use private linkage to avoid symbol conflicts in corner cases like the oneRafael Espindola
in PR9301. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126422 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-01fix rdar://8147692 - yet another crash due to my abi work.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107387 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-30Reapply:Chris Lattner
r107173, "fix PR7519: after thrashing around and remembering how all this stuff" r107216, "fix PR7523, which was caused by the ABI code calling ConvertType instead" This includes a fix to make ConvertTypeForMem handle the "recursive" case, and call it as such when lowering function types which have an indirect result. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107310 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-30Revert r107173, "fix PR7519: after thrashing around and remembering how all ↵Daniel Dunbar
this stuff", it broke bootstrap. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107232 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-29fix PR7519: after thrashing around and remembering how all this stuffChris Lattner
works, the fix is quite simple: just make sure to call ConvertTypeRecursive when the function type being lowered is in the midst of ConvertType. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107173 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-16fix a bogus assertion exposed by a recent change: packing theChris Lattner
struct may cause it to shrink more than one byte. Before my recent changes we compiled the new test into: %0 = type { [6 x i8] } @x = global %0 { [6 x i8] undef }, align 2 ; <%0*> [#uses=0] which is obviously bogus. Now we compile it into: %0 = type <{ i32, i8, i8 }> @x = global %0 zeroinitializer, align 2 ; <%0*> [#uses=0] Where the last byte only is tail padding. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101536 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-16emit padding as undef values, take 2Nuno Lopes
merge also a few tests I had here for this feature, and FileCheck'ize one file git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101535 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-13Rework the ConstStructBuilder code to emit missing initializerChris Lattner
elements with explicit zero values instead of with tail padding. On an example like this: struct foo { int a; int b; }; struct foo fooarray[] = { {1, 2}, {4}, }; We now lay this out as: @fooarray = global [2 x %struct.foo] [%struct.foo { i32 1, i32 2 }, %struct.foo { i32 4, i32 0 }] instead of as: @fooarray = global %0 <{ %struct.foo { i32 1, i32 2 }, %1 { i32 4, [4 x i8] zeroinitializer } }> Preserving both the struct type of the second element, but also the array type of the entire thing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101155 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-12fix PR6660/6168: emit padding as zeros instead of undef. Because Chris Lattner
trailing fields may not be represented in initializer lists, they are being handled as padding and those fields *must* be zero initialized. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101067 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar
- 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
2009-12-08Remove include of system header.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90883 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-05fix comment.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90660 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-05consolidate some tests.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-05implement rdar://7346691 by codegen'ing struct/array initializersChris Lattner
to a memset or a memcpy from a global when possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90658 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-05simplify a condition and add a testcase.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90652 91177308-0d34-0410-b5e6-96231b3b80d8