Anders Carlsson
e99bdb6969
Don't build an aggregate constructor loop when the constructor is trivial.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102912 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-03 15:09:17 +00:00
Anders Carlsson
0d7c583a4b
Don't copy or initialize empty classes. Fixes PR7012.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102891 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-03 01:20:20 +00:00
Mon P Wang
3ecd785aff
Reapply patch for adding support for address spaces and added a isVolatile field to memcpy, memmove, and memset.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100305 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-04 03:10:52 +00:00
Mon P Wang
c90f56d9f1
Revert r100193 since it causes failures in objc in clang
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100200 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-02 18:43:42 +00:00
Mon P Wang
8facca6caf
Reapply patch for adding support for address spaces and added a isVolatile field to memcpy, memmove, and memset.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100193 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-02 18:04:30 +00:00
Bob Wilson
b5896c3792
Revert Mon Ping's 99930 due to broken llvm-gcc buildbots.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99949 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 22:28:46 +00:00
Mon P Wang
3b5caa2065
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99930 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30 21:02:45 +00:00
Nuno Lopes
fc2844846e
implement PR5654: add -fassume-sane-operator-new, which is enabled by default, and adds the malloc attribute to the global function new() and to the overloaded new operators.
...
feel free to chage the name to this lengthy argument
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91543 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16 16:59:22 +00:00
Anders Carlsson
30311fa6b0
Handle ImplicitValueInitExpr in AggExprEmitter.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91519 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16 06:57:54 +00:00
Daniel Dunbar
a5728872c7
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
2009-12-15 20:14:24 +00:00
Fariborz Jahanian
744823c874
Fix the test case failed in buildbot.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89791 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-24 19:37:10 +00:00
Fariborz Jahanian
048f52aa9c
Refactor collection of call arguments in common code.
...
Add support for variadic collection functions. More to do
here.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89781 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-24 18:29:37 +00:00
Anders Carlsson
09edb9c38c
Use EmitStoreOfScalar when copying the scalar to the space allocated by 'new'.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89613 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-22 19:25:33 +00:00
Daniel Dunbar
010c3f531a
Fix test portability.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86911 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-12 00:41:41 +00:00
Anders Carlsson
6ac5fc49ee
Emit new[] cookie when needed.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82642 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-23 18:59:48 +00:00
Anders Carlsson
a4d4c019bf
Basic support for new[].
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82628 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-23 16:07:23 +00:00
Anders Carlsson
215bd208d6
Fix a thinko.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72679 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-01 00:26:14 +00:00
Anders Carlsson
f11085398d
Check for null correctly for new expressions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72678 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-01 00:05:16 +00:00
Anders Carlsson
d3fd6bad12
Improve irgen of 'new' further.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72677 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-31 21:53:59 +00:00
Anders Carlsson
627a3e573f
...and aggregate POD types.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72676 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-31 21:12:26 +00:00
Anders Carlsson
3923e95280
Support for complex types.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72675 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-31 21:07:58 +00:00
Anders Carlsson
6d0ffad181
Better support for scalar POD types in 'new' expressions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72674 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-31 20:56:36 +00:00
Anders Carlsson
d958389d52
Make sure to copy back arguments that can be changed by FindAllocationOverload. This fixes placement new. (Sebastian, please review).
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72673 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-31 20:26:12 +00:00
Anders Carlsson
ed4e367f8e
Very basic irgen support for new expressions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72672 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-31 20:21:44 +00:00