X87: Split some SharedFunctionInfo's compiler hints off into debugger hints.
port 3a9152ece7
(r42594)
original commit message:
We are planning to add a few more debugger related bits, and are running
out of compiler hints bits. The new bit field is going to be part of the
debug info struct. If the debug info is not available, we store the bit
field in its place on the shared function info.
BUG=
Review-Url: https://codereview.chromium.org/2649893004
Cr-Commit-Position: refs/heads/master@{#42617}
This commit is contained in:
parent
e53f6469d9
commit
1652c8063a
@ -535,9 +535,8 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
|
||||
// it is present) and load it into kInterpreterBytecodeArrayRegister.
|
||||
__ mov(eax, FieldOperand(edi, JSFunction::kSharedFunctionInfoOffset));
|
||||
Label load_debug_bytecode_array, bytecode_array_loaded;
|
||||
__ cmp(FieldOperand(eax, SharedFunctionInfo::kDebugInfoOffset),
|
||||
Immediate(DebugInfo::uninitialized()));
|
||||
__ j(not_equal, &load_debug_bytecode_array);
|
||||
__ JumpIfNotSmi(FieldOperand(eax, SharedFunctionInfo::kDebugInfoOffset),
|
||||
&load_debug_bytecode_array);
|
||||
__ mov(kInterpreterBytecodeArrayRegister,
|
||||
FieldOperand(eax, SharedFunctionInfo::kFunctionDataOffset));
|
||||
__ bind(&bytecode_array_loaded);
|
||||
|
@ -468,7 +468,12 @@ class MacroAssembler: public Assembler {
|
||||
test(value, Immediate(kSmiTagMask));
|
||||
j(not_zero, not_smi_label, distance);
|
||||
}
|
||||
|
||||
// Jump if the operand is not a smi.
|
||||
inline void JumpIfNotSmi(Operand value, Label* smi_label,
|
||||
Label::Distance distance = Label::kFar) {
|
||||
test(value, Immediate(kSmiTagMask));
|
||||
j(not_zero, smi_label, distance);
|
||||
}
|
||||
// Jump if the value cannot be represented by a smi.
|
||||
inline void JumpIfNotValidSmiValue(Register value, Register scratch,
|
||||
Label* on_invalid,
|
||||
|
Loading…
Reference in New Issue
Block a user