| Index: src/assembler.cc
|
| diff --git a/src/assembler.cc b/src/assembler.cc
|
| index 1620fef00ceb72f26d4b1e81d87890f80b921ba4..9c9ddcdda69e8c5f60e98964a50d9655cf2e0d46 100644
|
| --- a/src/assembler.cc
|
| +++ b/src/assembler.cc
|
| @@ -174,14 +174,14 @@ void RelocInfoWriter::WriteTaggedPC(uint32_t pc_delta, int tag) {
|
|
|
|
|
| void RelocInfoWriter::WriteTaggedData(intptr_t data_delta, int tag) {
|
| - *--pos_ = data_delta << kPositionTypeTagBits | tag;
|
| + *--pos_ = static_cast<byte>(data_delta << kPositionTypeTagBits | tag);
|
| }
|
|
|
|
|
| void RelocInfoWriter::WriteExtraTag(int extra_tag, int top_tag) {
|
| - *--pos_ = top_tag << (kTagBits + kExtraTagBits) |
|
| - extra_tag << kTagBits |
|
| - kDefaultTag;
|
| + *--pos_ = static_cast<int>(top_tag << (kTagBits + kExtraTagBits) |
|
| + extra_tag << kTagBits |
|
| + kDefaultTag);
|
| }
|
|
|
|
|
| @@ -196,7 +196,7 @@ void RelocInfoWriter::WriteExtraTaggedPC(uint32_t pc_delta, int extra_tag) {
|
| void RelocInfoWriter::WriteExtraTaggedData(intptr_t data_delta, int top_tag) {
|
| WriteExtraTag(kDataJumpTag, top_tag);
|
| for (int i = 0; i < kIntptrSize; i++) {
|
| - *--pos_ = data_delta;
|
| + *--pos_ = static_cast<byte>(data_delta);
|
| // Signed right shift is arithmetic shift. Tested in test-utils.cc.
|
| data_delta = data_delta >> kBitsPerByte;
|
| }
|
| @@ -211,7 +211,7 @@ void RelocInfoWriter::Write(const RelocInfo* rinfo) {
|
| ASSERT(rinfo->pc() - last_pc_ >= 0);
|
| ASSERT(RelocInfo::NUMBER_OF_MODES < kMaxRelocModes);
|
| // Use unsigned delta-encoding for pc.
|
| - uint32_t pc_delta = rinfo->pc() - last_pc_;
|
| + uint32_t pc_delta = static_cast<uint32_t>(rinfo->pc() - last_pc_);
|
| RelocInfo::Mode rmode = rinfo->rmode();
|
|
|
| // The two most common modes are given small tags, and usually fit in a byte.
|
|
|