History log of /llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp (Results 876 – 900 of 1023)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# d172e91f 17-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

Patch to 1) synthesizing non-trivial default destructor when
one is not provided by user. 2) More complete
emission of ctor prologue when it has no initializer
list or when it is synthesized.

llvm-s

Patch to 1) synthesizing non-trivial default destructor when
one is not provided by user. 2) More complete
emission of ctor prologue when it has no initializer
list or when it is synthesized.

llvm-svn: 79269

show more ...


# 04fddf0d 15-Aug-2009 Eli Friedman <eli.friedman@gmail.com>

Fix for PR4721: adjust CodeGen and ASTContext so that we have a
consistent model for handling size expressions for VLAs.

The model is essentially as follows: VLA types own their associated
expressi

Fix for PR4721: adjust CodeGen and ASTContext so that we have a
consistent model for handling size expressions for VLAs.

The model is essentially as follows: VLA types own their associated
expression. In some cases, we need to create multiple VLA types to
represent a given VLA (for canonical types, or qualifiers on array types,
or type merging). If we need to create multiple types based off of
the same VLA declaration, we use the new refcounting functionality so they can
all own the expression. The VLASizeMap in CodeGenFunction then uses the size
expression to identify the group of VLA types based off of the same original
declaration.

I'm not particularly attached to the VLA types owning the expression,
but we're stuck with at least until someone comes up with a way
to walk the VLA expressions for a declaration.

I did the parallel fix in ASTContext for DependentSizedArrayType, but I
haven't really looked closely at it, so there might still be issues
there.

I'll clean up the code duplication in ASTContext in a followup commit.

llvm-svn: 79071

show more ...


# 8dc7626f 15-Aug-2009 Chris Lattner <sabre@nondot.org>

minor cleanups for VLA stuff.

llvm-svn: 79059


# 41a75027 13-Aug-2009 Owen Anderson <resistor@mac.com>

Update for LLVM API change.

llvm-svn: 78946


# de7d4c26 12-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

Patch for synthesizing copy assignment operator.
WIP.

llvm-svn: 78841


# 9d3405ce 10-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

minor refactoring. No change otherwise.

llvm-svn: 78582


# f48123b4 09-Aug-2009 Anders Carlsson <andersca@mac.com>

Improve handling of member pointers.

llvm-svn: 78536


# b8be93fc 08-Aug-2009 Anders Carlsson <andersca@mac.com>

Add support for global initializers.

llvm-svn: 78515


# f6bda5d6 08-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

Refactoring of copy ctor ir-gen. No change in functionality.

llvm-svn: 78489


# b68df0bc 07-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

Synthesized copy constructor now generates code for
copying non-virtual base classes which have non-trivial
constructor. Work in progress.

llvm-svn: 78436


# 40134e71 07-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

More synthesis of copy constructors. Work in progress.

llvm-svn: 78402


# 9301b24c 06-Aug-2009 Fariborz Jahanian <fjahanian@apple.com>

Patch toward synthesizing copy constructors.
Work in progress.

llvm-svn: 78355


# 0b75f23b 31-Jul-2009 Owen Anderson <resistor@mac.com>

Update for LLVM API change.

llvm-svn: 77722


# 6f14c730 30-Jul-2009 Fariborz Jahanian <fjahanian@apple.com>

Synthesize the default constructor which has not
been declared as needed.

llvm-svn: 77641


# 7ec07a57 30-Jul-2009 Owen Anderson <resistor@mac.com>

Update for LLVM API changes.

llvm-svn: 77638


# aa01d2a5 30-Jul-2009 Fariborz Jahanian <fjahanian@apple.com>

Patch for future ir-gen for destructor calls.

llvm-svn: 77608


# 9793f0e4 29-Jul-2009 Owen Anderson <resistor@mac.com>

Update for LLVM API change.

llvm-svn: 77514


# c23c7e6a 29-Jul-2009 Ted Kremenek <kremenek@apple.com>

Change uses of:
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsRecordType() -> Type::getAs<RecordType>()
Type::getAsPointerType() -> Type::getAs<PointerType>()
Type::ge

Change uses of:
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsRecordType() -> Type::getAs<RecordType>()
Type::getAsPointerType() -> Type::getAs<PointerType>()
Type::getAsBlockPointerType() -> Type::getAs<BlockPointerType>()
Type::getAsLValueReferenceType() -> Type::getAs<LValueReferenceType>()
Type::getAsRValueReferenceType() -> Type::getAs<RValueReferenceType>()
Type::getAsMemberPointerType() -> Type::getAs<MemberPointerType>()
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsTagType() -> Type::getAs<TagType>()

And remove Type::getAsReferenceType(), etc.

This change is similar to one I made a couple weeks ago, but that was partly
reverted pending some additional design discussion. With Doug's pending smart
pointer changes for Types, it seemed natural to take this approach.

llvm-svn: 77510

show more ...


# b7a2fe6f 24-Jul-2009 Owen Anderson <resistor@mac.com>

Update for LLVM API change.

llvm-svn: 77012


# 7c02cf60 23-Jul-2009 Daniel Dunbar <daniel@zuster.org>

Shield clang from LLVM API changes, until the dust settles.

llvm-svn: 76862


# 83381cc9 20-Jul-2009 Fariborz Jahanian <fjahanian@apple.com>

Move EmitCtorPrologue to CGCXX. Add an assert and FIXMEs.

llvm-svn: 76498


# 127059c7 20-Jul-2009 Fariborz Jahanian <fjahanian@apple.com>

Early ir-gen for constructor prologue. This is on going.

llvm-svn: 76493


# 94e12450 20-Jul-2009 Mike Stump <mrs@apple.com>

Remove an apparently unused header.

llvm-svn: 76473


# ea3060a9 19-Jul-2009 Daniel Dunbar <daniel@zuster.org>

Catch another trivial case where we can avoid emitting a separate return blcok.

llvm-svn: 76365


# b6adc43f 19-Jul-2009 Daniel Dunbar <daniel@zuster.org>

Avoid generation of dead code in a few more situations.
- Emit variable declarations as "simple", we want to avoid forcing the creation
of a dummy basic block, but still need to make the variable

Avoid generation of dead code in a few more situations.
- Emit variable declarations as "simple", we want to avoid forcing the creation
of a dummy basic block, but still need to make the variable available for
later use.

- With that, we can now skip IRgen for other unreachable statements (which
don't define a label).

- Anders, I added two fixmes on calls to EmitVLASize, can you check them?

llvm-svn: 76361

show more ...


1...<<3132333435363738394041