John McCall
|
4d4e5c1ae8
Split reinterpret_casts of member pointers out from CK_BitCast; this
|
13 yıl önce |
Benjamin Kramer
|
14c598268f
Use a simpler (and more efficient) pattern to pad vectors.
|
13 yıl önce |
Richard Smith
|
7ca4850a3e
Deal with a horrible C++11 special case. If a non-literal type has a constexpr
|
13 yıl önce |
Bill Wendling
|
cf6511be74
Bump up the initial vector size to avoid having to grow the vector more often.
|
13 yıl önce |
Chris Lattner
|
8b418685e9
simplify a bunch of code to use the well-known LLVM IR types computed by CodeGenModule.
|
13 yıl önce |
Bill Wendling
|
f9ea953f22
Use a more efficient container for these values. Also reserve space when using a
|
13 yıl önce |
Bill Wendling
|
35f18a5e8b
Use a SmallVector instead of std::vector. This improves compilation time in
|
13 yıl önce |
Bill Wendling
|
fd3e5ef640
Don't recalculate the size of the array each time through the for-loop.
|
13 yıl önce |
Chris Lattner
|
6ef016f872
simplify code and smallvectorize.
|
13 yıl önce |
Chris Lattner
|
94010695f7
reapply the patches reverted in r149477, which enable ConstantDataArray.
|
13 yıl önce |
Argyrios Kyrtzidis
|
5d3a4bb13d
Revert r149363 which was part a series of commits that were reverted in llvm
|
13 yıl önce |
Chris Lattner
|
ff8f9ec833
ConstantArray::get() (for strings) is going away, use
|
13 yıl önce |
Richard Smith
|
e7aa62de65
Remove constant member pointer support from Expr-based constant emission now
|
13 yıl önce |
David Chisnall
|
7a7ee3033e
Some improvements to the handling of C11 atomic types:
|
13 yıl önce |
Richard Smith
|
2d6a567046
constexpr irgen: Add irgen support for APValue::Struct, APValue::Union,
|
13 yıl önce |
Eli Friedman
|
7ead5c7b6f
Implement the missing pieces of Evaluate for _Complex types. With that complete, remove some code from CGExprConstant which is no longer necessary. While I'm here, a couple minor tweaks to _Complex-in-C++. (Specifically, make _Complex types literal types, and don't warn for _Complex int.)
|
13 yıl önce |
Eli Friedman
|
5930a4c522
Address Richard's review comments on r147561 (Evaluate support for address-of-label differences).
|
13 yıl önce |
Eli Friedman
|
6563928411
Add an APValue representation for the difference between two address-of-label expressions. Add support to Evaluate and CGExprConstant for generating/handling them. Remove the special-case for such differences in Expr::isConstantInitializer.
|
13 yıl önce |
Richard Smith
|
47d2145675
constexpr: support for evaluation and codegen of typeid constants.
|
13 yıl önce |
Eli Friedman
|
58c65fcb90
Fix a failure (which led to a crash) in constant emission code with vector compound literals.
|
13 yıl önce |
Eli Friedman
|
26e80cdfe8
Make sure we correctly zero-initialize unions containing a pointer to data member as the first field. PR11487.
|
13 yıl önce |
Richard Smith
|
7401cf524c
Use static storage duration for file-scope compound literals, even when they
|
13 yıl önce |
Richard Smith
|
e24f5fc8c7
Constant expression evaluation: add support for evaluation of member pointers
|
13 yıl önce |
Richard Smith
|
1bf9a9e6a5
Represent an APValue based on a Decl as that Decl, rather than a DeclRefExpr
|
13 yıl önce |
Richard Smith
|
180f47959a
Constant expression evaluation: support for evaluation of structs and unions of
|
13 yıl önce |
Richard Smith
|
cc5d4f637c
Constant expression evaluation: support for arrays.
|
13 yıl önce |
John McCall
|
7864435ef2
Rip out CK_GetObjCProperty.
|
13 yıl önce |
Eli Friedman
|
64f45a24b1
Fix the representation of wide strings in the AST and IR so that it uses the native representation of integers for the elements. This fixes a bunch of nastiness involving
|
14 yıl önce |
Richard Smith
|
51f4708c00
Rename Expr::Evaluate to Expr::EvaluateAsRValue to make it clear that it will
|
14 yıl önce |
Eli Friedman
|
b000459901
Don't try to emit CK_LValueBitCast casts as constants. PR9558.
|
14 yıl önce |