Commit Graph

10 Commits

Author SHA1 Message Date
Mike Stump 88fc7d4202 This falls into the category of stupid pet tricks. I hate to do this,
but this is necessary to continue work on virtual vtables.  We don't
want to penalize virtual table building testcases, just because
complex virtual conversions don't yet work.

llvm-svn: 88676
2009-11-13 18:53:35 +00:00
Eli Friedman d76f438369 Revert r86741; it doesn't handle virtual bases correctly.
llvm-svn: 86745
2009-11-10 22:48:10 +00:00
Eli Friedman 0960059c0c Minor optimization to skip null check in generated code where it isn't
necessary.

llvm-svn: 86741
2009-11-10 22:42:26 +00:00
Benjamin Kramer abd5b90e4c Simplify pointer creation with the new Type::getInt*Ptr methods.
llvm-svn: 83964
2009-10-13 10:07:13 +00:00
Anders Carlsson c6d171ec77 Change GetAddressCXXOfBaseClass to use CXXBasePaths for calculating base class offsets. Fix the code to handle virtual bases as well.
llvm-svn: 83426
2009-10-06 22:43:30 +00:00
Anders Carlsson 32bfb1ce8f Move some functions from CodeGenFunctions to CodeGenModule so they can be used by CGExprConstant.
llvm-svn: 83263
2009-10-03 14:56:57 +00:00
Anders Carlsson 9150a2a8c0 Handle CK_BaseToDerivedMemberPointer for member function pointers. Fixes PR5091.
llvm-svn: 83041
2009-09-29 03:13:20 +00:00
Anders Carlsson 8fef09cd80 When doing a derived-to-base class and the class offset is 0 we can just do a simple bitcast.
llvm-svn: 82579
2009-09-22 21:58:22 +00:00
Anders Carlsson 360e7d0a8f When necessary, null check the base value in GetAddressCXXOfBaseClass.
llvm-svn: 81611
2009-09-12 06:04:24 +00:00
Anders Carlsson 9a57c5ac6f Whoops, add CGCXXClass.cpp
llvm-svn: 81607
2009-09-12 04:27:24 +00:00