| Index: test/cctest/test-assembler-arm.cc
|
| diff --git a/test/cctest/test-assembler-arm.cc b/test/cctest/test-assembler-arm.cc
|
| index 59ebaab069270fa8626ef4f060a3aea03093685d..06b8d81be4dc4b95de817786ca749b2bb543acdd 100644
|
| --- a/test/cctest/test-assembler-arm.cc
|
| +++ b/test/cctest/test-assembler-arm.cc
|
| @@ -1981,4 +1981,50 @@ TEST(ARMv8_vrintX) {
|
| #undef CHECK_VRINT
|
| }
|
| }
|
| +
|
| +
|
| +TEST(regress4292_b) {
|
| + CcTest::InitializeVM();
|
| + Isolate* isolate = CcTest::i_isolate();
|
| + HandleScope scope(isolate);
|
| +
|
| + Assembler assm(isolate, NULL, 0);
|
| + Label end;
|
| + __ mov(r0, Operand(isolate->factory()->infinity_value()));
|
| + for (int i = 0; i < 1020; ++i) {
|
| + __ b(hi, &end);
|
| + }
|
| + __ bind(&end);
|
| +}
|
| +
|
| +
|
| +TEST(regress4292_bl) {
|
| + CcTest::InitializeVM();
|
| + Isolate* isolate = CcTest::i_isolate();
|
| + HandleScope scope(isolate);
|
| +
|
| + Assembler assm(isolate, NULL, 0);
|
| + Label end;
|
| + __ mov(r0, Operand(isolate->factory()->infinity_value()));
|
| + for (int i = 0; i < 1020; ++i) {
|
| + __ bl(hi, &end);
|
| + }
|
| + __ bind(&end);
|
| +}
|
| +
|
| +
|
| +TEST(regress4292_blx) {
|
| + CcTest::InitializeVM();
|
| + Isolate* isolate = CcTest::i_isolate();
|
| + HandleScope scope(isolate);
|
| +
|
| + Assembler assm(isolate, NULL, 0);
|
| + Label end;
|
| + __ mov(r0, Operand(isolate->factory()->infinity_value()));
|
| + for (int i = 0; i < 1020; ++i) {
|
| + __ blx(&end);
|
| + }
|
| + __ bind(&end);
|
| +}
|
| +
|
| #undef __
|
|
|