diff options
author | Ulan Degenbaev <ulan@chromium.org> | 2014-12-23 15:09:52 +0100 |
---|---|---|
committer | Ulan Degenbaev <ulan@chromium.org> | 2014-12-23 14:10:08 +0000 |
commit | aee41f5d4de09a9ffc245eaea459a75331b6f94d (patch) | |
tree | 6c788db5e85274e62fa4f330d388395081316251 | |
parent | f4826bb31edc73bdd057d25b44ed6407c472a694 (diff) | |
download | v8-aee41f5d4de09a9ffc245eaea459a75331b6f94d.tar.gz |
Version 3.30.33.13 (cherry-pick)
Merged 13449b66231b323468487ed1525b516ff6c489df
ARM: check immediate overflow in branch and mov_label_offset in release mode to catch crashes earlier.
BUG=chromium:440913
LOG=N
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/821213002
Cr-Commit-Position: refs/branch-heads/3.30@{#25267}
-rw-r--r-- | src/arm/assembler-arm.cc | 8 | ||||
-rw-r--r-- | src/version.cc | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/arm/assembler-arm.cc b/src/arm/assembler-arm.cc index 17bf4f93a..c7b91c584 100644 --- a/src/arm/assembler-arm.cc +++ b/src/arm/assembler-arm.cc @@ -1338,7 +1338,7 @@ int Assembler::branch_offset(Label* L, bool jump_elimination_allowed) { void Assembler::b(int branch_offset, Condition cond) { DCHECK((branch_offset & 3) == 0); int imm24 = branch_offset >> 2; - DCHECK(is_int24(imm24)); + CHECK(is_int24(imm24)); emit(cond | B27 | B25 | (imm24 & kImm24Mask)); if (cond == al) { @@ -1352,7 +1352,7 @@ void Assembler::bl(int branch_offset, Condition cond) { positions_recorder()->WriteRecordedPositions(); DCHECK((branch_offset & 3) == 0); int imm24 = branch_offset >> 2; - DCHECK(is_int24(imm24)); + CHECK(is_int24(imm24)); emit(cond | B27 | B25 | B24 | (imm24 & kImm24Mask)); } @@ -1362,7 +1362,7 @@ void Assembler::blx(int branch_offset) { // v5 and above DCHECK((branch_offset & 1) == 0); int h = ((branch_offset & 2) >> 1)*B24; int imm24 = branch_offset >> 2; - DCHECK(is_int24(imm24)); + CHECK(is_int24(imm24)); emit(kSpecialCondition | B27 | B25 | h | (imm24 & kImm24Mask)); } @@ -1504,7 +1504,7 @@ void Assembler::mov_label_offset(Register dst, Label* label) { // // When the label gets bound: target_at extracts the link and target_at_put // patches the instructions. - DCHECK(is_uint24(link)); + CHECK(is_uint24(link)); BlockConstPoolScope block_const_pool(this); emit(link); nop(dst.code()); diff --git a/src/version.cc b/src/version.cc index 63f7b6207..81515d1ae 100644 --- a/src/version.cc +++ b/src/version.cc @@ -35,7 +35,7 @@ #define MAJOR_VERSION 3 #define MINOR_VERSION 30 #define BUILD_NUMBER 33 -#define PATCH_LEVEL 12 +#define PATCH_LEVEL 13 // Use 1 for candidates and 0 otherwise. // (Boolean macro values are not supported by all preprocessors.) #define IS_CANDIDATE_VERSION 0 |