PPC: [turbofan] Add initial support for SOFT deopts.

Port 7a22fdff1e

Original commit message:
    This only introduces the basic support for both SOFT and EAGER deopts in
    TurboFan, but doesn't make use of SOFT deopts anywhere yet (there are
    some other issues blocking that). Basically every Deoptimize operator
    now has a DeoptimizeKind, which can be either kSoft or kEager.

R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=

Review URL: https://codereview.chromium.org/1518483002

Cr-Commit-Position: refs/heads/master@{#32727}
This commit is contained in:
mbrandy 2015-12-09 10:35:24 -08:00 committed by Commit bot
parent 43c7ced3c1
commit cfef519a1e

View File

@ -761,7 +761,9 @@ void CodeGenerator::AssembleArchInstruction(Instruction* instr) {
case kArchDeoptimize: {
int deopt_state_id =
BuildTranslation(instr, -1, 0, OutputFrameStateCombine::Ignore());
AssembleDeoptimizerCall(deopt_state_id, Deoptimizer::EAGER);
Deoptimizer::BailoutType bailout_type =
Deoptimizer::BailoutType(MiscField::decode(instr->opcode()));
AssembleDeoptimizerCall(deopt_state_id, bailout_type);
break;
}
case kArchRet: