| Index: src/arm64/macro-assembler-arm64.h
|
| diff --git a/src/arm64/macro-assembler-arm64.h b/src/arm64/macro-assembler-arm64.h
|
| index 95d69990d2f2b62608c3877c5d05fd130ca534d6..1375178d4f6b423d908a981d5886a5e3b932d46e 100644
|
| --- a/src/arm64/macro-assembler-arm64.h
|
| +++ b/src/arm64/macro-assembler-arm64.h
|
| @@ -202,6 +202,18 @@ class MacroAssembler : public Assembler {
|
| static bool IsImmMovz(uint64_t imm, unsigned reg_size);
|
| static unsigned CountClearHalfWords(uint64_t imm, unsigned reg_size);
|
|
|
| + // Try to move an immediate into the destination register in a single
|
| + // instruction. Returns true for success, and updates the contents of dst.
|
| + // Returns false, otherwise.
|
| + bool TryOneInstrMoveImmediate(const Register& dst, int64_t imm);
|
| +
|
| + // Move an immediate into register dst, and return an Operand object for use
|
| + // with a subsequent instruction that accepts a shift. The value moved into
|
| + // dst is not necessarily equal to imm; it may have had a shifting operation
|
| + // applied to it that will be subsequently undone by the shift applied in the
|
| + // Operand.
|
| + Operand MoveImmediateForShiftedOp(const Register& dst, int64_t imm);
|
| +
|
| // Conditional macros.
|
| inline void Ccmp(const Register& rn,
|
| const Operand& operand,
|
|
|