diff options
Diffstat (limited to 'clang/lib/CodeGen/CGDecl.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGDecl.cpp | 18 |
1 files changed, 0 insertions, 18 deletions
diff --git a/clang/lib/CodeGen/CGDecl.cpp b/clang/lib/CodeGen/CGDecl.cpp index e9f58cfac68..7350af870d2 100644 --- a/clang/lib/CodeGen/CGDecl.cpp +++ b/clang/lib/CodeGen/CGDecl.cpp @@ -1796,24 +1796,6 @@ void CodeGenFunction::EmitParmDecl(const VarDecl &D, ParamValue Arg, setBlockContextParameter(IPD, ArgNo, Arg.getDirectValue()); return; } - - // Apply any prologue 'this' adjustments required by the ABI. Be careful to - // handle the case where 'this' is passed indirectly as part of an inalloca - // struct. - if (const CXXMethodDecl *MD = - dyn_cast_or_null<CXXMethodDecl>(CurCodeDecl)) { - if (MD->isVirtual() && IPD == CXXABIThisDecl) { - llvm::Value *This = Arg.isIndirect() - ? Builder.CreateLoad(Arg.getIndirectAddress()) - : Arg.getDirectValue(); - This = CGM.getCXXABI().adjustThisParameterInVirtualFunctionPrologue( - *this, CurGD, This); - if (Arg.isIndirect()) - Builder.CreateStore(This, Arg.getIndirectAddress()); - else - Arg = ParamValue::forDirect(This); - } - } } Address DeclPtr = Address::invalid(); |