- 9d232c8 Change hasAggregateLLVMType, which conflates complex and by John McCall · 12 years ago
- 23742cd Use ASTContext::getDeclAlign(<Field Decl>) to get the alignment of the first by Lang Hames · 12 years ago
- 1d4fff5 Better support for constructors with -cxx-abi microsoft, partly fixes PR12784 by Timur Iskhodzhanov · 12 years ago
- 5e8577e Use the correct alignment for POD-member memcpys where the first field is a by Lang Hames · 12 years ago
- 56c00c4 Re-apply r174919 - smarter copy/move assignment/construction, with fixes for by Lang Hames · 12 years ago
- c764830 ubsan: Add checking for invalid downcasts. Per [expr.static.cast]p2 and p11, by Richard Smith · 12 years ago
- 59660c2 Emit virtual/deleting destructors properly with -cxx-abi microsoft, PR15058 by Timur Iskhodzhanov · 12 years ago
- c2808e7 Backing out r174919 while I investigate a self-host bug on Takumi's builder. by Lang Hames · 12 years ago
- 5310859 When generating IR for default copy-constructors, copy-assignment operators, by Lang Hames · 12 years ago
- 074cae0 Destroy arrays and ARC fields when throwing out of ctors. by John McCall · 12 years ago
- 378e1e7 When we're emitting a constructor or destructor call from a delegating by Douglas Gregor · 12 years ago
- b8b2c9d First pass at abstracting out a class for the target C++ ABI. by John McCall · 12 years ago
- cc6456c CGClass.cpp: [PR14335] Remove comma-separated \param, for now. [-Wdocumentation] by NAKAMURA Takumi · 12 years ago
- 72390b3 Rename llvm::Attributes to llvm::Attribute. by Bill Wendling · 12 years ago
- ad017fa Revert r170500. It over-zealously converted *ALL* things named Attributes, which is wrong here. by Bill Wendling · 12 years ago
- 094dbf9 Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future. by Bill Wendling · 12 years ago
- 3bc93e3 Change DeclContextLookup(Const)Result to (Mutable)ArrayRef<NamedDecl*>, as per review discussion in r170365 by David Blaikie · 12 years ago
- 50f089a Make sure the __invoke function for lambdas returns properly. Per bug report on IRC> by Eli Friedman · 12 years ago
- e938536 When deciding whether to convert an array construction loop into a memcpy, look by Richard Smith · 12 years ago
- 7edf9e3 Simplify: replace getContext().getLangOpts() with just getLangOpts(). by Richard Smith · 12 years ago
- 4cdad31 Switch CodeGenOptions over to a .def file, like we do with LangOptions. by Douglas Gregor · 12 years ago
- fac6310 Have 'addFnAttr' take the attribute enum value. Then have it build the attribute object and add it appropriately. No functionality change. by Bill Wendling · 12 years ago
- 4def70d -fcatch-undefined-behavior: emit calls to the runtime library whenever one of the checks fails. by Richard Smith · 12 years ago
- 859c65c Fix an assertion failure with a C++ constructor initializing a by Eli Friedman · 12 years ago
- 7916c99 When devirtualizing the conversion to a virtual base subobject, by John McCall · 12 years ago
- 0f3d097 Distinguish more carefully between free functions and C++ instance methods by John McCall · 12 years ago
- 581deb3 Revert Decl's iterators back to pointer value_type rather than reference value_type by David Blaikie · 12 years ago
- 262bc18 Remove the ref/value inconsistency in filter_decl_iterator. by David Blaikie · 13 years ago
- 3a70cd6 Use enum to set debug info size generated by Clang by Alexey Samsonov · 13 years ago
- 8560791 Fix bug 12574 - Avoid infinite recursion in constructors and destructors when using Microsoft C++ ABI by Timur Iskhodzhanov · 13 years ago
- 377ecc7 Propagate alignment on lvalues through EmitLValueForField. PR12395. by Eli Friedman · 13 years ago
- 56ea377 Add a note about a missing optimization in the case of virtual inheritance. by John McCall · 13 years ago
- 649b4a1 Revert r153613 as it's causing large compile-time regressions on the nightly testers. by Chad Rosier · 13 years ago
- 57cd1b8 When we can't prove that the target of an aggregate copy is by John McCall · 13 years ago
- 8cb4a07 add tbaa metadata to vtable pointer loads/stores by Kostya Serebryany · 13 years ago
- 4e4d084 Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). by David Blaikie · 13 years ago
- 23f0267 Implement "optimization" for lambda-to-block conversion which inlines the generated block literal for lambdas which are immediately converted to block pointer type. This simplifies the AST, avoids an unnecessary copy of the lambda and makes it much easier to avoid copying the result onto the heap. by Eli Friedman · 13 years ago
- c568543 Prefer bitcast+GEP over ptrtoint+sub+inttoptr: it's semantically equivalent here, and generally nicer to the optimizer. by Eli Friedman · 13 years ago
- 9a561d5 Ensure that we delete destructors in the right cases. Specifically: by Richard Smith · 13 years ago
- 64bee65 Work-in-progress for lambda conversion-to-block operator. Still need to implement the retain+autorelease outside of ARC, and there's a bug that causes the generated code to crash in ARC (which I think is unrelated to my code, although I'm not completely sure). by Eli Friedman · 13 years ago
- 972edf0 Make heap-allocation of std::initializer_list 'work'. by Sebastian Redl · 13 years ago
- 924db71 Make std::initializer_list member initializers 'work'. by Sebastian Redl · 13 years ago
- de5d3c7 Whether an argument is required (in contrast with being an by John McCall · 13 years ago
- 27dd7d9 Rework the Sema/AST/IRgen dance for the lambda closure type's by Douglas Gregor · 13 years ago
- 21f6ed9 Initial implementation of IRGen for the lambda conversion-to-function-pointer operator. by Eli Friedman · 13 years ago
- bd89f8c Start of IRGen for lambda conversion operators. by Eli Friedman · 13 years ago
- b74ed08 Implement IRGen of lambda expressions which capture arrays. by Eli Friedman · 13 years ago
- 0bdb5aa Refactor out new function EmitInitializerForField from EmitMemberInitializer. The new function will be used to initialize the fields of lambda expressions. by Eli Friedman · 13 years ago
- 8b41868 simplify a bunch of code to use the well-known LLVM IR types computed by CodeGenModule. by Chris Lattner · 13 years ago
- af79088 Fix comment. by Eric Christopher · 13 years ago
- 516bbd4 Use function pointers, rather than references, to pass Destroyers by Peter Collingbourne · 13 years ago
- 6da2c71 Switch LValue so that it exposes alignment in CharUnits. (No functional change.) by Eli Friedman · 13 years ago
- d7722d9 Switch the Alignment argument on AggValueSlot over to CharUnits, per John's review comment. by Eli Friedman · 13 years ago
- f394078 Track alignment in AggValueSlot. No functional change in this patch, but I'll be introducing uses of the specified alignment soon. by Eli Friedman · 13 years ago
- 73fb350 Recommit: by Eric Christopher · 13 years ago
- 28e0635 Revert file/scope handling patches. gdb testing revealed a couple of bugs. by Eric Christopher · 13 years ago
- 55acb0d Removed extra line in comment. by Jim Goodnow II · 13 years ago
- 4b2d549 Start handling debug line and scope information better: by Eric Christopher · 13 years ago
- 5321bc4 Rename EmitStopPoint in CGDebugInfo to EmitLocation. "stop points" don't by Eric Christopher · 13 years ago
- e09cdf4 Move all vtable layout data into new VTableLayout class by Peter Collingbourne · 13 years ago
- 84fcc48 Move vtable component accessors to VTableContext by Peter Collingbourne · 13 years ago
- 1d2b317 Create a VTableContext class and start moving CodeGenVTables methods to it by Peter Collingbourne · 13 years ago
- 690b2db Only trigger the initialize-an-array-via-elementwise-copy/move code by Douglas Gregor · 13 years ago
- b681fb1 Explicitly-defaulted copy/move constructors are not "implicit", but by Douglas Gregor · 13 years ago
- 416f63e PR10304: Do not call destructors for data members from union destructors. Prior to C++11, this by Richard Smith · 13 years ago
- 3460c0c Sorry, that assertion actually already exists. by John McCall · 13 years ago
- 082aade We don't generate null initializer expressions anymore, and we don't need to. by John McCall · 13 years ago
- 85ea7aa Declare and define implicit move constructor and assignment operator. by Sebastian Redl · 13 years ago
- 410ffb2 Track whether an AggValueSlot is potentially aliased, and do not by John McCall · 13 years ago
- 7c2349b Use stronger typing for the flags on AggValueSlot and require by John McCall · 13 years ago
- c55db3b Cleanup; no functionality change. by Eli Friedman · 13 years ago
- 5f9e272 remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports by Chris Lattner · 13 years ago
- 2acc6e3 de-constify llvm::Type, patch by David Blaikie! by Chris Lattner · 13 years ago
- dd376ca Arrays are permitted to be zero-length in some situations. by John McCall · 13 years ago
- c3c0766 Convert the standard default-construction loops to use phis and by John McCall · 13 years ago
- 8f62992 Aggressive dead code elimination. by John McCall · 13 years ago
- ad346f4 Generalize Cleanup::Emit's "isForEH" parameter into a set by John McCall · 13 years ago
- 9928c48 Switch field destruction over to use the new destroyer-based API by John McCall · 13 years ago
- bdc4d80 A number of array-related IR-gen cleanups. by John McCall · 13 years ago
- 545d996 LValue carries a type now, so simplify the main EmitLoad/Store APIs by John McCall · 13 years ago
- a07398e Restore correct use of GC barriers. by John McCall · 13 years ago
- f85e193 Automatic Reference Counting. by John McCall · 13 years ago
- 7a614d8 Implement support for C++11 in-class initialization of non-static data members. by Richard Smith · 13 years ago
- e3d6cf2 Fix another regression from the "skip vtable pointer initialization" by Anders Carlsson · 13 years ago
- adf5dc3 Re-enable the fix for PR9181 now that all the edge cases are handled. by Anders Carlsson · 13 years ago
- 1493e23 Disable the optimization until the bug noticed by Sean Hunt has been fixed. by Anders Carlsson · 13 years ago
- ffb945f When emitting the destructor for a class with a vtable, if we can determine by Anders Carlsson · 13 years ago
- a2447e0 Move code to emit the callee of an CXXOperatorCallExpr out into a separate function in CGClass.cpp by Anders Carlsson · 13 years ago
- b76af9c Ensure that destructors are properly inovked when an exception leaves by Sean Hunt · 14 years ago
- d49bd55 Fix delegating constructors stylistic issues. by Sean Hunt · 14 years ago
- 04c9a49 Simplify code a bit by using CallArgList::add. No intended functionality change. by Eli Friedman · 14 years ago
- 059ce0d Fully implement delegating constructors! by Sean Hunt · 14 years ago
- 642a75f When block-capturing a variable with a non-trivial destructor, by John McCall · 14 years ago
- b924124 Replace a couple of Builder.CreateICmpEQ with Builder.CreateIsNull. No functionality change. by Anders Carlsson · 14 years ago
- 14c65ca [Reapply r128776, modified so that it does not break debug info.] by Ken Dyck · 14 years ago
- 62c117d Revert r128770, r128771, r128773 and r128776 for now. It breaks debug info. by Devang Patel · 14 years ago
- 4fbabd3 Change the return type of CodeGenVTables::getVirtualBaseOffsetOffset() to by Ken Dyck · 14 years ago
- bbf3bac Remove PHINode::reserveOperandSpace(). Instead, add a parameter to by Jay Foad · 14 years ago
- 4230d52 Convert the BaseOffset member of BaseSubobject to CharUnits from bits. No by Ken Dyck · 14 years ago
- d6fb21f Convert OffsetFromNearestVBast parameter of InitializeVTablePointer(s) to by Ken Dyck · 14 years ago