summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* Mangle record types as decls.Anders Carlsson2009-09-261-1/+17
| | | | llvm-svn: 82843
* Change isTemplate to return the actual template declaration.Anders Carlsson2009-09-261-5/+5
| | | | llvm-svn: 82839
* Improve mangling of typename types.Anders Carlsson2009-09-261-1/+16
| | | | llvm-svn: 82833
* Fix 80-col violation.Mike Stump2009-09-251-1/+2
| | | | llvm-svn: 82782
* Fix an infinite loop arising when trying to generate debug informationJohn McCall2009-09-252-17/+24
| | | | | | for a ObjC class with an ivar of weak self type. llvm-svn: 82745
* Fixed another code gen bug in objc's new write-barrier API.Fariborz Jahanian2009-09-251-1/+2
| | | | llvm-svn: 82735
* Fix 80-col violation.Mike Stump2009-09-241-1/+2
| | | | llvm-svn: 82725
* Patch fixes a code gen. bug in generation of objc_assign_ivarFariborz Jahanian2009-09-245-16/+41
| | | | | | (objc GC's API). llvm-svn: 82724
* Refactor the representation of qualifiers to bring ExtQualType out of theJohn McCall2009-09-2411-199/+132
| | | | | | | | Type hierarchy. Demote 'volatile' to extended-qualifier status. Audit our use of qualifiers and fix a few places that weren't dealing with qualifiers quite right; many more remain. llvm-svn: 82705
* Darwin/x86-32: Enumerated types and block pointer types in structures were notDaniel Dunbar2009-09-241-3/+7
| | | | | | | | handled correctly. - <rdar://problem/7247671> Function arguments incorrect when function returns a struct on i386 w/ llvm-g++ and clang llvm-svn: 82681
* Handle namespace aliases.Anders Carlsson2009-09-231-0/+1
| | | | llvm-svn: 82644
* Emit new[] cookie when needed.Anders Carlsson2009-09-231-6/+19
| | | | llvm-svn: 82642
* Basic support for new[].Anders Carlsson2009-09-231-26/+104
| | | | llvm-svn: 82628
* Add a new variant of EmitCXXAggrConstructorCall that takes a Value that ↵Anders Carlsson2009-09-232-22/+31
| | | | | | holds the number of elements to construct, to be used when implementing new[]. llvm-svn: 82602
* Move codegen of new and delete to CGCXXExpr.cppAnders Carlsson2009-09-223-187/+204
| | | | llvm-svn: 82585
* Remove now fixed FIXME.Mike Stump2009-09-221-1/+0
| | | | llvm-svn: 82584
* No need to null check implicit lvalue cast exprs.Anders Carlsson2009-09-221-8/+15
| | | | llvm-svn: 82580
* When doing a derived-to-base class and the class offset is 0 we can just do ↵Anders Carlsson2009-09-221-7/+10
| | | | | | a simple bitcast. llvm-svn: 82579
* CXXMethodDecls should always be mangled, even if they are inside an extern ↵Anders Carlsson2009-09-221-1/+4
| | | | | | "C" block. Fixes PR5017. llvm-svn: 82567
* Don't assert that linkage decls are always C++, it's not true. Fixes PR5019.Anders Carlsson2009-09-221-4/+1
| | | | llvm-svn: 82557
* Revert "Switch a few clients over to StringLiteral::getString.", this is ↵Daniel Dunbar2009-09-221-5/+10
| | | | | | breaking some projects, but I don't have a test case yet. llvm-svn: 82539
* Switch a few clients over to StringLiteral::getString.Daniel Dunbar2009-09-221-10/+5
| | | | | | - Switching all of them out-of-my-current-scope-of-interest, sorry. llvm-svn: 82515
* Fix some typos. WIP. Large alignments don't work yet.Mike Stump2009-09-221-3/+3
| | | | llvm-svn: 82512
* Improve debug info generation for __block variables.Mike Stump2009-09-224-29/+156
| | | | llvm-svn: 82508
* Change all the Type::getAsFoo() methods to specializations of Type::getAs().John McCall2009-09-2112-65/+65
| | | | | | | | | | | Several of the existing methods were identical to their respective specializations, and so have been removed entirely. Several more 'leaf' optimizations were introduced. The getAsFoo() methods which imposed extra conditions, like getAsObjCInterfacePointerType(), have been left in place. llvm-svn: 82501
* Removed -fobjc-newgc-api option. clang now conforms toFariborz Jahanian2009-09-211-2/+1
| | | | | | gcc-style write-barrier api only. llvm-svn: 82493
* Miscellanous fixes in generatation of objc gc's write-barriers.Fariborz Jahanian2009-09-212-22/+18
| | | | llvm-svn: 82472
* Implement __builtin_unreachable(), a GCC 4.5 extension.Chris Lattner2009-09-211-1/+6
| | | | llvm-svn: 82433
* Start mangling expressions.Anders Carlsson2009-09-211-3/+41
| | | | llvm-svn: 82423
* Ok, an AssertingVH definitely doesn't work for now because we free our cache ↵Daniel Dunbar2009-09-192-4/+7
| | | | | | after the optimizer may have hacked on the module. Use a WeakVH instead. llvm-svn: 82324
* Make clang stop relying on ConstantStruct::get's default value for isPackedNick Lewycky2009-09-194-19/+21
| | | | | | which will be going away (ie. it's becoming a required parameter) later today. llvm-svn: 82323
* Switch CGDebugInfo type cache to using an AssertingVH.Daniel Dunbar2009-09-192-19/+23
| | | | llvm-svn: 82321
* Factor out CGDebugInfo::CreateTypeNode method.Daniel Dunbar2009-09-192-24/+38
| | | | | | - No functionality change. llvm-svn: 82320
* More mangling work.Anders Carlsson2009-09-181-7/+9
| | | | llvm-svn: 82265
* Make the mangler conform even better to the grammar.Anders Carlsson2009-09-181-12/+8
| | | | llvm-svn: 82262
* Generate more of the vbase virtual offset for covariant thunks. WIP.Mike Stump2009-09-181-8/+72
| | | | llvm-svn: 82253
* More mangler mangling.Anders Carlsson2009-09-181-12/+26
| | | | llvm-svn: 82250
* Call mangleTemplatePrefix.Anders Carlsson2009-09-181-5/+7
| | | | llvm-svn: 82247
* Change manglePrefix to return early if the DC is the translation unit.Anders Carlsson2009-09-181-2/+4
| | | | llvm-svn: 82246
* More mangling goodness.Anders Carlsson2009-09-181-20/+42
| | | | llvm-svn: 82193
* Handle mangling of TemplateSpecializationType.Anders Carlsson2009-09-181-7/+58
| | | | llvm-svn: 82189
* Fixed a bug in generation of the new write-barriers when Fariborz Jahanian2009-09-182-3/+19
| | | | | | array syntax is used to derefernce and assign to ivar pointee. llvm-svn: 82183
* Ignore extern "C++" { } when mangling.Anders Carlsson2009-09-171-3/+9
| | | | llvm-svn: 82146
* Revert r82123 for now.Anders Carlsson2009-09-171-21/+14
| | | | llvm-svn: 82125
* Treat an unqualified RecordType as a RecordDecl when substituting.Anders Carlsson2009-09-171-14/+21
| | | | llvm-svn: 82123
* Substitution for prefixes.Anders Carlsson2009-09-171-3/+12
| | | | llvm-svn: 82122
* Substitute unscoped template names.Anders Carlsson2009-09-171-0/+4
| | | | llvm-svn: 82119
* IRgen/ObjC: Correctly construct the function info for variadic message sends.Daniel Dunbar2009-09-172-5/+6
| | | | | | | | This fixes some bad -O0 codegen and the unnecessary clearing of al on entry to objc_msgSend for most message sends. <rdar://problem/7102824> [irgen] unnecessary xorb on calls to objc_msgSend on x86_64 llvm-svn: 82118
* IRgen/ObjC: Make the target method decl available to GenerateMessageSendSuper.Daniel Dunbar2009-09-174-32/+48
| | | | llvm-svn: 82117
* Add mangleSubstitution/addSubstitution variants that take a NamedDecl.Anders Carlsson2009-09-171-3/+20
| | | | llvm-svn: 82116
OpenPOWER on IntegriCloud