| Index: src/compiler/c-linkage.cc
|
| diff --git a/src/compiler/c-linkage.cc b/src/compiler/c-linkage.cc
|
| index 5fddc4c62886442041d8f979f70498cbc73b5b3b..b38e529f9fa1caa2e00095f243e5da409e38dcea 100644
|
| --- a/src/compiler/c-linkage.cc
|
| +++ b/src/compiler/c-linkage.cc
|
| @@ -230,6 +230,11 @@ CallDescriptor* Linkage::GetSimplifiedCDescriptor(
|
| // The target for C calls is always an address (i.e. machine pointer).
|
| MachineType target_type = MachineType::Pointer();
|
| LinkageLocation target_loc = LinkageLocation::ForAnyRegister();
|
| + CallDescriptor::Flags flags = CallDescriptor::kUseNativeStack;
|
| + if (set_initialize_root_flag) {
|
| + flags |= CallDescriptor::kInitializeRootRegister;
|
| + }
|
| +
|
| return new (zone) CallDescriptor( // --
|
| CallDescriptor::kCallAddress, // kind
|
| target_type, // target MachineType
|
| @@ -240,10 +245,7 @@ CallDescriptor* Linkage::GetSimplifiedCDescriptor(
|
| Operator::kNoProperties, // properties
|
| kCalleeSaveRegisters, // callee-saved registers
|
| kCalleeSaveFPRegisters, // callee-saved fp regs
|
| - set_initialize_root_flag ? // flags
|
| - CallDescriptor::kInitializeRootRegister
|
| - : CallDescriptor::kNoFlags,
|
| - "c-call");
|
| + flags, "c-call");
|
| }
|
|
|
| } // namespace compiler
|
|
|