History log of /llvm-project-15.0.7/clang/lib/CodeGen/CGExpr.cpp (Results 1076 – 1100 of 1262)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b7a2fe6f 24-Jul-2009 Owen Anderson <[email protected]>

Update for LLVM API change.

llvm-svn: 77012


# 8af896c1 23-Jul-2009 Anders Carlsson <[email protected]>

Move the LLVM field number for bit fields into the BitFieldInfo structure, since it's meaning is completely different than for non-bit fields.

llvm-svn: 76882


# acedf776 22-Jul-2009 Mon P Wang <[email protected]>

Preserve address space information through member accesses, e.g.,
__attribute__((address_space(1))) struct {int arr[ 3 ]; } *p1;
... = p1->arr[2]; // load from address space 1

llvm-svn: 76

Preserve address space information through member accesses, e.g.,
__attribute__((address_space(1))) struct {int arr[ 3 ]; } *p1;
... = p1->arr[2]; // load from address space 1

llvm-svn: 76717

show more ...


# 8a286fbd 17-Jul-2009 Ted Kremenek <[email protected]>

Per offline discussion with Steve Naroff, add back Type::getAsXXXType() methods
until Doug Gregor's Type smart pointer code lands (or more discussion occurs).
These methods just call the new Type::ge

Per offline discussion with Steve Naroff, add back Type::getAsXXXType() methods
until Doug Gregor's Type smart pointer code lands (or more discussion occurs).
These methods just call the new Type::getAs<XXX> methods, so we still have
reduced implementation redundancy. Having explicit getAsXXXType() methods makes
it easier to set breakpoints in the debugger.

llvm-svn: 76193

show more ...


# e3fb4b65 16-Jul-2009 Ted Kremenek <[email protected]>

Add member template 'Type::getAs<T>', which converts a Type* to a respective T*.
This method is intended to eventually replace the individual
Type::getAsXXXType<> methods.

The motivation behind this

Add member template 'Type::getAs<T>', which converts a Type* to a respective T*.
This method is intended to eventually replace the individual
Type::getAsXXXType<> methods.

The motivation behind this change is twofold:

1) Reduce redundant implementations of Type::getAsXXXType() methods. Most of
them are basically copy-and-paste.

2) By centralizing the implementation of the getAs<Type> logic we can more
smoothly move over to Doug Gregor's proposed canonical type smart pointer
scheme.

Along with this patch:

a) Removed 'Type::getAsPointerType()'; now clients use getAs<PointerType>.
b) Removed 'Type::getAsBlockPointerTypE()'; now clients use getAs<BlockPointerType>.

llvm-svn: 76098

show more ...


# 79d1215d 16-Jul-2009 Steve Naroff <[email protected]>

Remove ASTContext::isObjCObjectPointerType().
Convert all clients to use the new predicate on Type.

llvm-svn: 76076


# 9f98d376 16-Jul-2009 Owen Anderson <[email protected]>

Update for LLVM API change.

llvm-svn: 75869


# 170229f6 14-Jul-2009 Owen Anderson <[email protected]>

Update for LLVM API change, and contextify a bunch of related stuff.

llvm-svn: 75705


# 7cae42b0 10-Jul-2009 Steve Naroff <[email protected]>

This patch includes a conceptually simple, but very intrusive/pervasive change.

The idea is to segregate Objective-C "object" pointers from general C pointers (utilizing the recently added ObjCObje

This patch includes a conceptually simple, but very intrusive/pervasive change.

The idea is to segregate Objective-C "object" pointers from general C pointers (utilizing the recently added ObjCObjectPointerType). The fun starts in Sema::GetTypeForDeclarator(), where "SomeInterface *" is now represented by a single AST node (rather than a PointerType whose Pointee is an ObjCInterfaceType). Since a significant amount of code assumed ObjC object pointers where based on C pointers/structs, this patch is very tedious. It should also explain why it is hard to accomplish this in smaller, self-contained patches.

This patch does most of the "heavy lifting" related to moving from PointerType->ObjCObjectPointerType. It doesn't include all potential "cleanups". The good news is additional cleanups can be done later (some are noted in the code). This patch is so large that I didn't want to include any changes that are purely aesthetic.

By making the ObjC types truly built-in, they are much easier to work with (and require fewer "hacks"). For example, there is no need for ASTContext::isObjCIdStructType() or ASTContext::isObjCClassStructType()! We believe this change (and the follow-up cleanups) will pay dividends over time.

Given the amount of code change, I do expect some fallout from this change (though it does pass all of the clang tests). If you notice any problems, please let us know asap! Thanks.

llvm-svn: 75314

show more ...


# b4b64ca7 30-Jun-2009 Argyrios Kyrtzidis <[email protected]>

Remove the ASTContext parameter from the attribute-related methods of Decl.
The implementations of these methods can Use Decl::getASTContext() to get the ASTContext.

This commit touches a lot of fil

Remove the ASTContext parameter from the attribute-related methods of Decl.
The implementations of these methods can Use Decl::getASTContext() to get the ASTContext.

This commit touches a lot of files since call sites for these methods are everywhere.
I used pre-tokenized "carbon.h" and "cocoa.h" headers to do some timings, and there was no real time difference between before the commit and after it.

llvm-svn: 74501

show more ...


# ea12f6eb 26-Jun-2009 Nate Begeman <[email protected]>

OpenCL 1.0 Support: fix a bug with lvalue swizzles

llvm-svn: 74324


# 78bd61f6 18-Jun-2009 Douglas Gregor <[email protected]>

Move the static DeclAttrs map into ASTContext. Fixes <rdar://problem/6983177>.

llvm-svn: 73702


# 4ca97c3b 13-Jun-2009 Chris Lattner <[email protected]>

Fix PR4372, another case where non-prototyped functions can prevent
always_inline from working.

llvm-svn: 73273


# 07bbeca4 06-Jun-2009 Eli Friedman <[email protected]>

PR4339: make sure to properly extend/trunc the index of a vector element
insert/extract; the relevant instructions are defined to take only an
i32.

llvm-svn: 73005


# c6d98005 01-Jun-2009 Fariborz Jahanian <[email protected]>

A corner case of objc2 gc's write-barrier generation
for the Next runtime.

llvm-svn: 72703


# e32c0211 01-Jun-2009 Eli Friedman <[email protected]>

PR4289: Make sure "&func" has the right LLVM type when "func" is a
K&R-style definition.

llvm-svn: 72690


# 8eb93e72 31-May-2009 Anders Carlsson <[email protected]>

Emit destructors correctly for temporaries.

llvm-svn: 72655


# fd2af0cf 30-May-2009 Anders Carlsson <[email protected]>

Add lvalue irgen support for CXXBindTemporaryExpr.

llvm-svn: 72649


# 3be22e27 30-May-2009 Anders Carlsson <[email protected]>

More temporary support.

llvm-svn: 72648


# f7f9f687 30-May-2009 Eli Friedman <[email protected]>

Some small fixes for fields of reference type.

llvm-svn: 72636


# df0fe27b 29-May-2009 Mike Stump <[email protected]>

Fixup the rest of the trivial cases of the codegen of volatile. If
any body can spot codegen bugs with volatile, or knows of any in the
bug database, let me know.

llvm-svn: 72572


# 7551257f 27-May-2009 Fariborz Jahanian <[email protected]>

Change a confusing variable name.

llvm-svn: 72491


# 4034a95d 27-May-2009 Anders Carlsson <[email protected]>

Handle operator call expressions where the callee is a member function.

llvm-svn: 72458


# 4ae70ff9 27-May-2009 Anders Carlsson <[email protected]>

Add support for emitting calls to functions that return references (as lvalues only for now)

llvm-svn: 72449


# 3a9463bf 27-May-2009 Anders Carlsson <[email protected]>

Rename an EmitCallExpr function to EmitCall to make it clear that it doesn't emit an expr.

llvm-svn: 72446


1...<<4142434445464748495051