Index: src/ppc/full-codegen-ppc.cc |
diff --git a/src/ppc/full-codegen-ppc.cc b/src/ppc/full-codegen-ppc.cc |
index 533e097fc379ebbb1453ca3a91133b0c1bf44d1b..cd6e7e60ab82fb38895e30e485de1d77c499829e 100644 |
--- a/src/ppc/full-codegen-ppc.cc |
+++ b/src/ppc/full-codegen-ppc.cc |
@@ -248,6 +248,10 @@ void FullCodeGenerator::Generate() { |
Variable* this_function_var = scope()->this_function_var(); |
if (this_function_var != nullptr) { |
Comment cmnt(masm_, "[ This function"); |
+ if (!function_in_register) { |
+ __ LoadP(r4, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
+ // The write barrier clobbers register again, keep is marked as such. |
+ } |
SetVar(this_function_var, r4, r3, r5); |
} |