Граф коммитов

26 Коммитов

Автор SHA1 Сообщение Дата
Mike Stump 1eb4433ac4 Remove tabs, and whitespace cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-09 15:08:12 +00:00
Daniel Dunbar d7d5f0223b 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
2009-03-24 02:24:46 +00:00
Daniel Dunbar 4dc346e8dc Test case for emitting va_arg as l-value; apparently I only *thought* I had committed this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64368 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-12 08:41:10 +00:00
Daniel Dunbar 292d4f9a1a Force -triple/-fnext-runtime for a few more test cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63679 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-03 23:04:31 +00:00
Chris Lattner c8e9cd6e32 eliminate some random .ll file outputs
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63117 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 18:56:08 +00:00
Daniel Dunbar 80e62c29fe Implement codegen of aggregates as lvalues in binary expressions,
e.g. "(a = b).somefield".


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55758 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-04 03:20:13 +00:00
Daniel Dunbar 2d6ca8d0f6 Update a number of CodeGen tests to not create .ll files in the test
directory.
 - Removed .ll from the svn:ignore lists to try and prevent this.
 - Added svn:ignore on test/Misc/Output


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55104 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-21 02:51:29 +00:00
Eli Friedman 0408f6805c Always use packed structs. This isn't really very nice, but there's
nothing fundamentally wrong with it. Emitting unpacked structs where 
possible is more work for almost no practical benefit.  We'll probably 
want to fix it at some point anyway, but it's low priority.

The issue with long double in particular is that LLVM thinks an X86 long
double is 10 bytes, while clang considers it for all purposes to be
either 12 or 16 bytes, depending on the platform, even in a packed
struct.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51673 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-29 10:58:49 +00:00
Devang Patel 2fb86e61e3 Check first member alignment and uses packed struct if required.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51619 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-27 22:45:40 +00:00
Devang Patel bf20b68e92 Fix test case
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51618 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-27 22:44:22 +00:00
Eli Friedman b1851249d7 A few more cases for aggregate values.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51596 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-27 15:51:49 +00:00
Eli Friedman 75afb58549 Fix the codegen of structs with flexible array members.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46806 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-06 05:33:51 +00:00
Devang Patel eae1560d4f Cleanup InitListExpr code generation code.
Handle padding fields while initializing struct (fix PR 1962)



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46736 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-05 02:39:50 +00:00
Devang Patel 47fb697750 Handle incomplete struct initializer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46534 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-29 23:23:18 +00:00
Anders Carlsson a46b759d55 Assert that the type of the cast is equal to the _unqualified_ type of the subexpression. Fixes a problem spotted by Nuno Lopes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46158 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-18 02:25:57 +00:00
Anders Carlsson e4707ff0bb Add codegen upport for implicit casts to aggregate exprs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45954 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-14 06:28:57 +00:00
Seo Sanghyeon 9b73b39f6f Array subscription in aggregate expression
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45023 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-14 02:04:12 +00:00
Seo Sanghyeon 7777bb263f Implement dereference operator in aggregate expression
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45020 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-14 01:09:11 +00:00
Devang Patel 14c7500b8c Use getABITypeSizeInBits() instead of getTypeSizeInBits() during struct layout.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44798 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 18:25:34 +00:00
Anders Carlsson a1ff3e9290 Generate code for member exprs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43641 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-02 16:59:10 +00:00
Anders Carlsson 148fe67727 Handle function calls that return aggregate expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43581 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-31 22:04:46 +00:00
Devang Patel 0a96118bb8 Handle non LValue base expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43387 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-26 18:15:21 +00:00
Devang Patel 126a856ecd Handle
foo()->a = 42;



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43315 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-24 22:26:28 +00:00
Devang Patel dbb46b1985 Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43269 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-23 23:29:51 +00:00
Devang Patel b1e3989731 Handle nested structs.
typdef struct A { int i; struct A *next; } A


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43268 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-23 23:26:46 +00:00
Devang Patel b9b00ad626 Handle simple struct member expr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43258 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-23 20:28:39 +00:00