| Index: src/x64/macro-assembler-x64.h
|
| diff --git a/src/x64/macro-assembler-x64.h b/src/x64/macro-assembler-x64.h
|
| index ee143f9fe4268c8e40fb2edf7c57e3eeb5627d32..c380ca6b8390507ff237fae08e37079760e7bc06 100644
|
| --- a/src/x64/macro-assembler-x64.h
|
| +++ b/src/x64/macro-assembler-x64.h
|
| @@ -469,10 +469,18 @@ class MacroAssembler: public Assembler {
|
| // Test-and-jump functions. Typically combines a check function
|
| // above with a conditional jump.
|
|
|
| + // Jump if the value can be represented by a smi.
|
| + void JumpIfValidSmiValue(Register src, Label* on_valid,
|
| + Label::Distance near_jump = Label::kFar);
|
| +
|
| // Jump if the value cannot be represented by a smi.
|
| void JumpIfNotValidSmiValue(Register src, Label* on_invalid,
|
| Label::Distance near_jump = Label::kFar);
|
|
|
| + // Jump if the unsigned integer value can be represented by a smi.
|
| + void JumpIfUIntValidSmiValue(Register src, Label* on_valid,
|
| + Label::Distance near_jump = Label::kFar);
|
| +
|
| // Jump if the unsigned integer value cannot be represented by a smi.
|
| void JumpIfUIntNotValidSmiValue(Register src, Label* on_invalid,
|
| Label::Distance near_jump = Label::kFar);
|
| @@ -630,7 +638,9 @@ class MacroAssembler: public Assembler {
|
|
|
| void SmiShiftLeftConstant(Register dst,
|
| Register src,
|
| - int shift_value);
|
| + int shift_value,
|
| + Label* on_not_smi_result = NULL,
|
| + Label::Distance near_jump = Label::kFar);
|
| void SmiShiftLogicalRightConstant(Register dst,
|
| Register src,
|
| int shift_value,
|
| @@ -644,7 +654,9 @@ class MacroAssembler: public Assembler {
|
| // Uses and clobbers rcx, so dst may not be rcx.
|
| void SmiShiftLeft(Register dst,
|
| Register src1,
|
| - Register src2);
|
| + Register src2,
|
| + Label* on_not_smi_result = NULL,
|
| + Label::Distance near_jump = Label::kFar);
|
| // Shifts a smi value to the right, shifting in zero bits at the top, and
|
| // returns the unsigned intepretation of the result if that is a smi.
|
| // Uses and clobbers rcx, so dst may not be rcx.
|
|
|