summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* Remove some misguided code.Mike Stump2009-10-221-8/+2
| | | | llvm-svn: 84823
* Extend out the block descriptor structure for debug information withMike Stump2009-10-221-3/+6
| | | | | | the copy/dispose helpers as appropriate. llvm-svn: 84817
* Code gen for '.*' binary expressions - WIP.Fariborz Jahanian2009-10-211-0/+27
| | | | llvm-svn: 84800
* Turn on the preallocation of all BlockDeclRefExprs.Mike Stump2009-10-211-3/+1
| | | | llvm-svn: 84789
* Refine collection of BlockDeclRefExprs. WIP.Mike Stump2009-10-211-9/+16
| | | | llvm-svn: 84787
* Expand on code gen. for pointer to data members so it worksFariborz Jahanian2009-10-211-3/+4
| | | | | | for base classe members as well. Test case enhanced for this. llvm-svn: 84780
* Code gen for pointer-to-datamember - WIP.Fariborz Jahanian2009-10-212-0/+22
| | | | llvm-svn: 84771
* Fix typo.Mike Stump2009-10-211-2/+1
| | | | llvm-svn: 84770
* Refactor.Mike Stump2009-10-212-14/+4
| | | | llvm-svn: 84769
* Add AuroraUX ABI Triple in correct place.Edward O'Callaghan2009-10-211-1/+2
| | | | llvm-svn: 84758
* Prep work to always preallocate BlockDeclRefExprs so that we canMike Stump2009-10-213-48/+77
| | | | | | | generate the debug information for the first parameter to the block invoke functions. WIP. llvm-svn: 84737
* Fix 80-col violation.Mike Stump2009-10-211-2/+2
| | | | llvm-svn: 84719
* Code-gen for CXXZeroInitValueExpr AST passedFariborz Jahanian2009-10-203-5/+16
| | | | | | as argument to a function call. Removes a FIXME. llvm-svn: 84694
* Fix the 32-bit ABI to return structures with non-trivial copy ctors or dtors ↵Anders Carlsson2009-10-201-3/+9
| | | | | | indirectly. llvm-svn: 84686
* For now, we need to have the llvm type of the block pointer remain asMike Stump2009-10-201-1/+4
| | | | | | it was. Fixes codegen bug introduced yesterday. llvm-svn: 84668
* Do not eagerly cache DITypes because it allows real struct type to be ↵Devang Patel2009-10-201-31/+58
| | | | | | shadowed by forward declared struct type. llvm-svn: 84659
* Encode global variable name in debug info.Devang Patel2009-10-201-2/+2
| | | | llvm-svn: 84653
* Add missing semi-colon.Daniel Dunbar2009-10-201-1/+1
| | | | llvm-svn: 84650
* Bring Darwin into the switch-case statement instead of its own if for ↵Edward O'Callaghan2009-10-201-3/+2
| | | | | | readability. llvm-svn: 84646
* Refine the type of the first parameter to block invoke functions.Mike Stump2009-10-201-2/+22
| | | | | | | WIP. I have yet to find the magic incantation to get the structure type to be defined. If someone has a pointer, love to hear it. llvm-svn: 84590
* Handle emitting the assignment operator when the lhs is a reference. Fixes ↵Anders Carlsson2009-10-191-0/+10
| | | | | | PR5227. llvm-svn: 84518
* Avoid std::string concatenation.Daniel Dunbar2009-10-191-16/+10
| | | | llvm-svn: 84458
* Twinify CodeGenFunction::CreateTempAllocaDaniel Dunbar2009-10-193-6/+6
| | | | llvm-svn: 84456
* When binding a reference to a temporary, it's important that other ↵Anders Carlsson2009-10-181-16/+22
| | | | | | temporaries created as on the RHS are destroyed before emitting the dtor for the temporary. llvm-svn: 84451
* PR5218: Replace IdentifierInfo::getName with StringRef version, now that clientsDaniel Dunbar2009-10-182-6/+6
| | | | | | are updated. llvm-svn: 84447
* Twinify CGObjCMac, this simplifies the code and should reduce std::stringDaniel Dunbar2009-10-181-97/+86
| | | | | | trashing. llvm-svn: 84439
* Use CK_BitCast for member function pointer casts. Fixes PR5138.Anders Carlsson2009-10-182-1/+11
| | | | llvm-svn: 84438
* Move misc clients to IdentifierInfo StringRef API.Daniel Dunbar2009-10-181-4/+1
| | | | | | | | | - strcmp -> == - OS.write(II->getName() ...) -> OS << II->getNameStr() - Avoid std::string concatenation - Use getNameStr().str() when an std::string is really needed. llvm-svn: 84437
* Move clients to use IdentifierInfo::getNameStart() instead of getName()Daniel Dunbar2009-10-181-4/+4
| | | | llvm-svn: 84436
* Support IRgen of OpenCL vector initializers, ensuring the resulting IR is in aNate Begeman2009-10-181-42/+169
| | | | | | | | form that LLVM code generators can turn into efficient code. For example, int4 a, b, c; a = (int4)(b.yzw, a.x) llvm-svn: 84434
* Add some more cast kinds.Anders Carlsson2009-10-181-1/+10
| | | | llvm-svn: 84423
* add support for codegening CXXZeroInitValueExprsNuno Lopes2009-10-181-0/+6
| | | | llvm-svn: 84418
* Suppress -Asserts warning.Daniel Dunbar2009-10-171-0/+1
| | | | llvm-svn: 84329
* Fix PR5211: codegen shouldn't assume that the result of ||/&& is int Chris Lattner2009-10-171-10/+14
| | | | | | anymore. In C++ it is bool. llvm-svn: 84308
* Implement derived-to-base AST/code gen. There is aFariborz Jahanian2009-10-161-6/+13
| | | | | | | FIXME in CGCXX.cpp that I would like Anders to take a look at. llvm-svn: 84265
* ignore 'using' directive in CodeGenFunction::EmitDecl(). this fixes PR5085Nuno Lopes2009-10-161-0/+1
| | | | llvm-svn: 84255
* Builtin types are subsitutable if they are qualified. Fixes PR5196.Anders Carlsson2009-10-161-1/+1
| | | | llvm-svn: 84237
* Remove the ConstantArrayType subtypes. This information is preserved in theJohn McCall2009-10-161-2/+0
| | | | | | | | | | TypeLoc records for declarations; it should not be necessary to represent it directly in the type system. Please complain if you were using these classes and feel you can't replicate previous functionality using the TypeLoc API. llvm-svn: 84222
* Refine non-virtual part of the this adjustment for thunks. RefineMike Stump2009-10-151-15/+56
| | | | | | | non-virtual part of the return result adjustments for covariant thunks. WIP. llvm-svn: 84178
* Track the offset to the current virtual base in CurrentVBaseOffset.Mike Stump2009-10-151-21/+35
| | | | | | Track path information completely to ensure we get all the overrides. WIP. llvm-svn: 84166
* HandleAnders Carlsson2009-10-151-3/+45
| | | | | | | | | | | | | struct A { }; struct B : A { }; void f() { const A& a = B(); } correctly. (This now does the offset conversion if necessary and calls the destructor when a goes out of scope). llvm-svn: 84162
* Fix a thinko that John pointed outDouglas Gregor2009-10-141-3/+1
| | | | llvm-svn: 84142
* Give explicit and implicit instantiations of static data members ofDouglas Gregor2009-10-141-3/+42
| | | | | | | | class templates the proper linkage. Daniel, please look over the CodeGenModule bits. llvm-svn: 84140
* Shift the vcall slots for non-virtual bases of a virtual base, up intoMike Stump2009-10-141-6/+34
| | | | | | | | the virtual base so they can be reused properly. Don't reuse vcall slots across a virtual boundary. WIP. I have a testcase, but there are still things that need to be fixed before the testcase can go in. llvm-svn: 84120
* Copy metadata associated with CIDevang Patel2009-10-141-0/+4
| | | | llvm-svn: 84114
* There is now only one version of eh.selector and eh.typeid.for.Duncan Sands2009-10-142-17/+12
| | | | | | Fix the clang build. llvm-svn: 84107
* Few targets like PIC16 mangle the names of global variables, so retrieve the ↵Sanjiv Gupta2009-10-141-1/+1
| | | | | | | | name from Var itself rather than the decl for DebugInfo metadata. llvm-svn: 84102
* fix some cfstring related issues: Chris Lattner2009-10-141-13/+10
| | | | | | | | | | | | | 1) -fwritable-string does affect the non-utf16 version of cfstrings just not the utf16 ones. 2) utf16 strings should always be marked constant, as the __TEXT segment is readonly. 3) The name of the global doesn't matter, remove it from TargetInfo. 4) Trust the asmprinter to drop cstrings into the right section, like llvmgcc does now. This fixes rdar://7115750 llvm-svn: 84077
* unbreak test/CodeGen/builtins.c, reverting Devang's change.Chris Lattner2009-10-141-2/+2
| | | | llvm-svn: 84075
* Check void type before using replaceAllUsesWith().Devang Patel2009-10-131-1/+2
| | | | llvm-svn: 84050
OpenPOWER on IntegriCloud