summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* Attempt to fix the MSVC build.Anders Carlsson2009-12-031-4/+4
| | | | llvm-svn: 90427
* Fix thunk generation for thunks with a parameter with reference type.Eli Friedman2009-12-031-1/+2
| | | | llvm-svn: 90412
* Minor cleanup.Eli Friedman2009-12-033-12/+7
| | | | llvm-svn: 90411
* Add support for thunking dtors. Oh why does this make my head hurt?Mike Stump2009-12-034-15/+27
| | | | llvm-svn: 90409
* Reflow.Mike Stump2009-12-031-1/+3
| | | | llvm-svn: 90407
* Revert r90402 for now, virt.cpp is failing.Anders Carlsson2009-12-031-11/+9
| | | | llvm-svn: 90406
* Use Eli's ComputeThunkAdjustment for calculating the return adjustment.Anders Carlsson2009-12-031-9/+11
| | | | llvm-svn: 90402
* Add CodeGenModule::ComputeThunkAdjustment, which Eli wrote.Anders Carlsson2009-12-032-1/+42
| | | | llvm-svn: 90401
* Remove the index from the Thunk struct.Anders Carlsson2009-12-031-14/+10
| | | | llvm-svn: 90400
* Change the Thunks map to use the vtable index as the key.Anders Carlsson2009-12-031-7/+9
| | | | llvm-svn: 90399
* Add the global decl to the Thunk struct.Anders Carlsson2009-12-031-5/+7
| | | | llvm-svn: 90398
* Remove unused struct fields.Anders Carlsson2009-12-031-7/+2
| | | | llvm-svn: 90397
* Delay computing the return adjustments for covariant thunks until when they ↵Anders Carlsson2009-12-031-98/+113
| | | | | | are added to the vtable. llvm-svn: 90396
* No need to create the covariant thunk in both places now.Anders Carlsson2009-12-031-12/+5
| | | | llvm-svn: 90394
* Whoops, forgot to save :)Anders Carlsson2009-12-031-2/+4
| | | | llvm-svn: 90393
* Remove the index field from the CovariantThunk structure.Anders Carlsson2009-12-031-14/+6
| | | | llvm-svn: 90392
* Change the CovariantThunk map to use the vtable index as its key.Anders Carlsson2009-12-031-9/+9
| | | | llvm-svn: 90391
* Store a GlobalDecl in the return adjustment.Anders Carlsson2009-12-031-4/+7
| | | | llvm-svn: 90387
* Do not include the 'this' pointer adjustment in the covariant return type. ↵Anders Carlsson2009-12-031-26/+39
| | | | | | Instead, store it in the (now oddly named) Thunks map. llvm-svn: 90386
* Move VtableBuilder::OverrideMethod out of line in preparation of other ↵Anders Carlsson2009-12-031-112/+117
| | | | | | changes to it. No functionality change. llvm-svn: 90382
* Remove untrue statement.Mike Stump2009-12-031-3/+0
| | | | llvm-svn: 90377
* Note a failure I saw from the g++ testsuite:Mike Stump2009-12-031-0/+1
| | | | | | FAIL: g++.old-deja/g++.mike/eh23.C (test for excess errors) llvm-svn: 90374
* Work-in-progress: teach mangler how to mangle thunks for destructors.Eli Friedman2009-12-032-3/+16
| | | | llvm-svn: 90360
* Cleanups on exceptional edges don't work at all, yet. This doesn'tMike Stump2009-12-021-5/+0
| | | | | | | catch very many of them and if we caught all of them, the errors would be annoying. I'm working on this next. WIP. llvm-svn: 90358
* Add a cleanup scope for each catch clause.Mike Stump2009-12-021-15/+19
| | | | llvm-svn: 90357
* Add missing branch to exit. Seemingly obvious when I look at theMike Stump2009-12-021-0/+3
| | | | | | code, but to track this down was laborious. llvm-svn: 90356
* Fix for PR5522 and PR5666: fix a bunch of mangling issues with extern variablesEli Friedman2009-12-021-11/+25
| | | | | | and funcctions declared locally within a function. llvm-svn: 90344
* Pull the terminate handler up so that we can use it for the catchMike Stump2009-12-021-35/+31
| | | | | | | parameter setup code and set up the catch parameter setup code to protect that code with terminate. llvm-svn: 90340
* Turn off for now.Mike Stump2009-12-021-2/+2
| | | | llvm-svn: 90339
* Put the Builder classes into the anonymous namespace.Mike Stump2009-12-022-1/+4
| | | | llvm-svn: 90335
* Change rtti/Rtti to RTTI, as it is an acronym.Mike Stump2009-12-027-39/+40
| | | | llvm-svn: 90334
* Rename CGRtti.cpp to CGRTTI.cpp.Mike Stump2009-12-022-1/+1
| | | | llvm-svn: 90331
* Avoid warning for getTerminateFn defined but not used.Mike Stump2009-12-021-9/+3
| | | | llvm-svn: 90330
* terminate doesn't throw.Mike Stump2009-12-021-0/+1
| | | | llvm-svn: 90308
* More exception handling improvements... WIP.Mike Stump2009-12-023-47/+112
| | | | | | | | | | | Highlights include: Add a helper to generate __cxa_free_exception and _ZSt9terminatev. Add a region to handle EH object deallocation for ctor failures for throw. Add a terminate handler for __cxa_end_catch. A framework for adding cleanup actions for the exceptional edges only. llvm-svn: 90305
* Added an assert.Fariborz Jahanian2009-12-011-1/+4
| | | | llvm-svn: 90285
* Make EmitStoreOfScalar generate a more sane representation of boolean stores.Eli Friedman2009-12-011-6/+1
| | | | | | "Fixes" PR5645. llvm-svn: 90272
* (objc2 nonfragile-abi specific). If the translation unit includes an ↵Fariborz Jahanian2009-12-011-11/+10
| | | | | | | | | implementation of a subclass (direct or indirect) of a weak_import root class, emit a weak reference for the root class's metaclass (should complete radar 6815425). llvm-svn: 90249
* Update for llvm intrinsics change.Eric Christopher2009-12-011-0/+7
| | | | llvm-svn: 90208
* Much work on try/catch statement. WIP.Mike Stump2009-12-011-69/+250
| | | | | | | | | | | | | | | | | Highlights include: Fix __cxa_begin_catch so it now returns a value. Added getUnwindResumeOrRethrowFn helper to build up calls to _Unwind_Resume_or_Rethrow. Broke out object copying code into CopyObject from EmitCXXThrowExpr. Built up another version of CopyObject that can copy from memory for use in the catch parameter code. RTTI generation for type matching for catch. Code to check for the type match for catch. Code to generate the catch parameter, WIP, need make sure references and pointers and copy ctors work. llvm-svn: 90205
* Have ASTRecordLayout keep track of the key function, in preparation of ↵Anders Carlsson2009-11-305-67/+50
| | | | | | fixing a synthetic ctor/dtor bug. llvm-svn: 90168
* More support for virtual destructor calls.Fariborz Jahanian2009-11-301-15/+26
| | | | | | Fixes pr5619 llvm-svn: 90158
* Reflow comments and fix 80-col violation.Mike Stump2009-11-301-29/+27
| | | | llvm-svn: 90152
* Fix an assert.Anders Carlsson2009-11-301-2/+2
| | | | llvm-svn: 90149
* Don't try to generate common globals for C++ files, instead of depending on ↵Daniel Dunbar2009-11-301-1/+1
| | | | | | the FE to set NoCommon, and simplify CodeGenOptions initialization. llvm-svn: 90119
* Minor cleanup (no functionality change).Eli Friedman2009-11-301-23/+12
| | | | llvm-svn: 90105
* Don't pass false (default) for isVolatile parameter to CreateLoad.Daniel Dunbar2009-11-295-20/+22
| | | | llvm-svn: 90098
* Explicitly use setVolatile instead of extra IRBuilder argument.Daniel Dunbar2009-11-291-1/+3
| | | | llvm-svn: 90095
* Don't pass false (default) for isVolatile parameter to CreateStore.Daniel Dunbar2009-11-291-8/+8
| | | | llvm-svn: 90094
* Simplify code. No functionality change.Benjamin Kramer2009-11-291-22/+6
| | | | llvm-svn: 90087
OpenPOWER on IntegriCloud