Index: src/arm64/assembler-arm64.h |
diff --git a/src/arm64/assembler-arm64.h b/src/arm64/assembler-arm64.h |
index 049cb63c2bd65a1cd2f111d424748fa6cfa4eb80..5667e7dd5cbfb6a77530fb9e379090c0f6216dfd 100644 |
--- a/src/arm64/assembler-arm64.h |
+++ b/src/arm64/assembler-arm64.h |
@@ -81,15 +81,15 @@ struct CPURegister { |
kNoRegister |
}; |
- static CPURegister Create(unsigned code, unsigned size, RegisterType type) { |
+ static CPURegister Create(int code, int size, RegisterType type) { |
CPURegister r = {code, size, type}; |
return r; |
} |
- unsigned code() const; |
+ int code() const; |
RegisterType type() const; |
RegList Bit() const; |
- unsigned SizeInBits() const; |
+ int SizeInBits() const; |
int SizeInBytes() const; |
bool Is32Bits() const; |
bool Is64Bits() const; |
@@ -118,14 +118,14 @@ struct CPURegister { |
bool is(const CPURegister& other) const { return Is(other); } |
bool is_valid() const { return IsValid(); } |
- unsigned reg_code; |
- unsigned reg_size; |
+ int reg_code; |
+ int reg_size; |
RegisterType reg_type; |
}; |
struct Register : public CPURegister { |
- static Register Create(unsigned code, unsigned size) { |
+ static Register Create(int code, int size) { |
return Register(CPURegister::Create(code, size, CPURegister::kRegister)); |
} |
@@ -200,7 +200,7 @@ struct FPRegister : public CPURegister { |
kCode_no_reg = -1 |
}; |
- static FPRegister Create(unsigned code, unsigned size) { |
+ static FPRegister Create(int code, int size) { |
return FPRegister( |
CPURegister::Create(code, size, CPURegister::kFPRegister)); |
} |
@@ -385,13 +385,13 @@ class CPURegList { |
DCHECK(IsValid()); |
} |
- CPURegList(CPURegister::RegisterType type, unsigned size, RegList list) |
+ CPURegList(CPURegister::RegisterType type, int size, RegList list) |
: list_(list), size_(size), type_(type) { |
DCHECK(IsValid()); |
} |
- CPURegList(CPURegister::RegisterType type, unsigned size, |
- unsigned first_reg, unsigned last_reg) |
+ CPURegList(CPURegister::RegisterType type, int size, int first_reg, |
+ int last_reg) |
: size_(size), type_(type) { |
DCHECK(((type == CPURegister::kRegister) && |
(last_reg < kNumberOfRegisters)) || |
@@ -448,12 +448,12 @@ class CPURegList { |
CPURegister PopHighestIndex(); |
// AAPCS64 callee-saved registers. |
- static CPURegList GetCalleeSaved(unsigned size = kXRegSizeInBits); |
- static CPURegList GetCalleeSavedFP(unsigned size = kDRegSizeInBits); |
+ static CPURegList GetCalleeSaved(int size = kXRegSizeInBits); |
+ static CPURegList GetCalleeSavedFP(int size = kDRegSizeInBits); |
// AAPCS64 caller-saved registers. Note that this includes lr. |
- static CPURegList GetCallerSaved(unsigned size = kXRegSizeInBits); |
- static CPURegList GetCallerSavedFP(unsigned size = kDRegSizeInBits); |
+ static CPURegList GetCallerSaved(int size = kXRegSizeInBits); |
+ static CPURegList GetCallerSavedFP(int size = kDRegSizeInBits); |
// Registers saved as safepoints. |
static CPURegList GetSafepointSavedRegisters(); |
@@ -481,25 +481,25 @@ class CPURegList { |
return CountSetBits(list_, kRegListSizeInBits); |
} |
- unsigned RegisterSizeInBits() const { |
+ int RegisterSizeInBits() const { |
DCHECK(IsValid()); |
return size_; |
} |
- unsigned RegisterSizeInBytes() const { |
+ int RegisterSizeInBytes() const { |
int size_in_bits = RegisterSizeInBits(); |
DCHECK((size_in_bits % kBitsPerByte) == 0); |
return size_in_bits / kBitsPerByte; |
} |
- unsigned TotalSizeInBytes() const { |
+ int TotalSizeInBytes() const { |
DCHECK(IsValid()); |
return RegisterSizeInBytes() * Count(); |
} |
private: |
RegList list_; |
- unsigned size_; |
+ int size_; |
CPURegister::RegisterType type_; |
bool IsValid() const { |
@@ -1121,39 +1121,24 @@ class Assembler : public AssemblerBase { |
// Bitfield instructions. |
// Bitfield move. |
- void bfm(const Register& rd, |
- const Register& rn, |
- unsigned immr, |
- unsigned imms); |
+ void bfm(const Register& rd, const Register& rn, int immr, int imms); |
// Signed bitfield move. |
- void sbfm(const Register& rd, |
- const Register& rn, |
- unsigned immr, |
- unsigned imms); |
+ void sbfm(const Register& rd, const Register& rn, int immr, int imms); |
// Unsigned bitfield move. |
- void ubfm(const Register& rd, |
- const Register& rn, |
- unsigned immr, |
- unsigned imms); |
+ void ubfm(const Register& rd, const Register& rn, int immr, int imms); |
// Bfm aliases. |
// Bitfield insert. |
- void bfi(const Register& rd, |
- const Register& rn, |
- unsigned lsb, |
- unsigned width) { |
+ void bfi(const Register& rd, const Register& rn, int lsb, int width) { |
DCHECK(width >= 1); |
DCHECK(lsb + width <= rn.SizeInBits()); |
bfm(rd, rn, (rd.SizeInBits() - lsb) & (rd.SizeInBits() - 1), width - 1); |
} |
// Bitfield extract and insert low. |
- void bfxil(const Register& rd, |
- const Register& rn, |
- unsigned lsb, |
- unsigned width) { |
+ void bfxil(const Register& rd, const Register& rn, int lsb, int width) { |
DCHECK(width >= 1); |
DCHECK(lsb + width <= rn.SizeInBits()); |
bfm(rd, rn, lsb, lsb + width - 1); |
@@ -1161,26 +1146,20 @@ class Assembler : public AssemblerBase { |
// Sbfm aliases. |
// Arithmetic shift right. |
- void asr(const Register& rd, const Register& rn, unsigned shift) { |
+ void asr(const Register& rd, const Register& rn, int shift) { |
DCHECK(shift < rd.SizeInBits()); |
sbfm(rd, rn, shift, rd.SizeInBits() - 1); |
} |
// Signed bitfield insert in zero. |
- void sbfiz(const Register& rd, |
- const Register& rn, |
- unsigned lsb, |
- unsigned width) { |
+ void sbfiz(const Register& rd, const Register& rn, int lsb, int width) { |
DCHECK(width >= 1); |
DCHECK(lsb + width <= rn.SizeInBits()); |
sbfm(rd, rn, (rd.SizeInBits() - lsb) & (rd.SizeInBits() - 1), width - 1); |
} |
// Signed bitfield extract. |
- void sbfx(const Register& rd, |
- const Register& rn, |
- unsigned lsb, |
- unsigned width) { |
+ void sbfx(const Register& rd, const Register& rn, int lsb, int width) { |
DCHECK(width >= 1); |
DCHECK(lsb + width <= rn.SizeInBits()); |
sbfm(rd, rn, lsb, lsb + width - 1); |
@@ -1203,33 +1182,27 @@ class Assembler : public AssemblerBase { |
// Ubfm aliases. |
// Logical shift left. |
- void lsl(const Register& rd, const Register& rn, unsigned shift) { |
- unsigned reg_size = rd.SizeInBits(); |
+ void lsl(const Register& rd, const Register& rn, int shift) { |
+ int reg_size = rd.SizeInBits(); |
DCHECK(shift < reg_size); |
ubfm(rd, rn, (reg_size - shift) % reg_size, reg_size - shift - 1); |
} |
// Logical shift right. |
- void lsr(const Register& rd, const Register& rn, unsigned shift) { |
+ void lsr(const Register& rd, const Register& rn, int shift) { |
DCHECK(shift < rd.SizeInBits()); |
ubfm(rd, rn, shift, rd.SizeInBits() - 1); |
} |
// Unsigned bitfield insert in zero. |
- void ubfiz(const Register& rd, |
- const Register& rn, |
- unsigned lsb, |
- unsigned width) { |
+ void ubfiz(const Register& rd, const Register& rn, int lsb, int width) { |
DCHECK(width >= 1); |
DCHECK(lsb + width <= rn.SizeInBits()); |
ubfm(rd, rn, (rd.SizeInBits() - lsb) & (rd.SizeInBits() - 1), width - 1); |
} |
// Unsigned bitfield extract. |
- void ubfx(const Register& rd, |
- const Register& rn, |
- unsigned lsb, |
- unsigned width) { |
+ void ubfx(const Register& rd, const Register& rn, int lsb, int width) { |
DCHECK(width >= 1); |
DCHECK(lsb + width <= rn.SizeInBits()); |
ubfm(rd, rn, lsb, lsb + width - 1); |
@@ -1251,10 +1224,8 @@ class Assembler : public AssemblerBase { |
} |
// Extract. |
- void extr(const Register& rd, |
- const Register& rn, |
- const Register& rm, |
- unsigned lsb); |
+ void extr(const Register& rd, const Register& rn, const Register& rm, |
+ int lsb); |
// Conditional select: rd = cond ? rn : rm. |
void csel(const Register& rd, |