OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 HandleScope scope(isolate); | 52 HandleScope scope(isolate); |
53 | 53 |
54 Assembler assm(isolate, NULL, 0); | 54 Assembler assm(isolate, NULL, 0); |
55 | 55 |
56 __ function_descriptor(); | 56 __ function_descriptor(); |
57 | 57 |
58 __ add(r3, r3, r4); | 58 __ add(r3, r3, r4); |
59 __ blr(); | 59 __ blr(); |
60 | 60 |
61 CodeDesc desc; | 61 CodeDesc desc; |
62 assm.GetCode(&desc); | 62 assm.GetCode(isolate, &desc); |
63 Handle<Code> code = isolate->factory()->NewCode( | 63 Handle<Code> code = isolate->factory()->NewCode( |
64 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); | 64 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); |
65 #ifdef DEBUG | 65 #ifdef DEBUG |
66 code->Print(); | 66 code->Print(); |
67 #endif | 67 #endif |
68 F2 f = FUNCTION_CAST<F2>(code->entry()); | 68 F2 f = FUNCTION_CAST<F2>(code->entry()); |
69 intptr_t res = reinterpret_cast<intptr_t>( | 69 intptr_t res = reinterpret_cast<intptr_t>( |
70 CALL_GENERATED_CODE(isolate, f, 3, 4, 0, 0, 0)); | 70 CALL_GENERATED_CODE(isolate, f, 3, 4, 0, 0, 0)); |
71 ::printf("f() = %" V8PRIdPTR "\n", res); | 71 ::printf("f() = %" V8PRIdPTR "\n", res); |
72 CHECK_EQ(7, static_cast<int>(res)); | 72 CHECK_EQ(7, static_cast<int>(res)); |
(...skipping 18 matching lines...) Expand all Loading... |
91 __ bind(&L); | 91 __ bind(&L); |
92 __ add(r3, r3, r4); | 92 __ add(r3, r3, r4); |
93 __ subi(r4, r4, Operand(1)); | 93 __ subi(r4, r4, Operand(1)); |
94 | 94 |
95 __ bind(&C); | 95 __ bind(&C); |
96 __ cmpi(r4, Operand::Zero()); | 96 __ cmpi(r4, Operand::Zero()); |
97 __ bne(&L); | 97 __ bne(&L); |
98 __ blr(); | 98 __ blr(); |
99 | 99 |
100 CodeDesc desc; | 100 CodeDesc desc; |
101 assm.GetCode(&desc); | 101 assm.GetCode(isolate, &desc); |
102 Handle<Code> code = isolate->factory()->NewCode( | 102 Handle<Code> code = isolate->factory()->NewCode( |
103 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); | 103 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); |
104 #ifdef DEBUG | 104 #ifdef DEBUG |
105 code->Print(); | 105 code->Print(); |
106 #endif | 106 #endif |
107 F1 f = FUNCTION_CAST<F1>(code->entry()); | 107 F1 f = FUNCTION_CAST<F1>(code->entry()); |
108 intptr_t res = reinterpret_cast<intptr_t>( | 108 intptr_t res = reinterpret_cast<intptr_t>( |
109 CALL_GENERATED_CODE(isolate, f, 100, 0, 0, 0, 0)); | 109 CALL_GENERATED_CODE(isolate, f, 100, 0, 0, 0, 0)); |
110 ::printf("f() = %" V8PRIdPTR "\n", res); | 110 ::printf("f() = %" V8PRIdPTR "\n", res); |
111 CHECK_EQ(5050, static_cast<int>(res)); | 111 CHECK_EQ(5050, static_cast<int>(res)); |
(...skipping 30 matching lines...) Expand all Loading... |
142 // some relocated stuff here, not executed | 142 // some relocated stuff here, not executed |
143 __ RecordComment("dead code, just testing relocations"); | 143 __ RecordComment("dead code, just testing relocations"); |
144 __ mov(r0, Operand(isolate->factory()->true_value())); | 144 __ mov(r0, Operand(isolate->factory()->true_value())); |
145 __ RecordComment("dead code, just testing immediate operands"); | 145 __ RecordComment("dead code, just testing immediate operands"); |
146 __ mov(r0, Operand(-1)); | 146 __ mov(r0, Operand(-1)); |
147 __ mov(r0, Operand(0xFF000000)); | 147 __ mov(r0, Operand(0xFF000000)); |
148 __ mov(r0, Operand(0xF0F0F0F0)); | 148 __ mov(r0, Operand(0xF0F0F0F0)); |
149 __ mov(r0, Operand(0xFFF0FFFF)); | 149 __ mov(r0, Operand(0xFFF0FFFF)); |
150 | 150 |
151 CodeDesc desc; | 151 CodeDesc desc; |
152 assm.GetCode(&desc); | 152 assm.GetCode(isolate, &desc); |
153 Handle<Code> code = isolate->factory()->NewCode( | 153 Handle<Code> code = isolate->factory()->NewCode( |
154 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); | 154 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); |
155 #ifdef DEBUG | 155 #ifdef DEBUG |
156 code->Print(); | 156 code->Print(); |
157 #endif | 157 #endif |
158 F1 f = FUNCTION_CAST<F1>(code->entry()); | 158 F1 f = FUNCTION_CAST<F1>(code->entry()); |
159 intptr_t res = reinterpret_cast<intptr_t>( | 159 intptr_t res = reinterpret_cast<intptr_t>( |
160 CALL_GENERATED_CODE(isolate, f, 10, 0, 0, 0, 0)); | 160 CALL_GENERATED_CODE(isolate, f, 10, 0, 0, 0, 0)); |
161 ::printf("f() = %" V8PRIdPTR "\n", res); | 161 ::printf("f() = %" V8PRIdPTR "\n", res); |
162 CHECK_EQ(3628800, static_cast<int>(res)); | 162 CHECK_EQ(3628800, static_cast<int>(res)); |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 __ addi(r11, fp, Operand(32)); | 215 __ addi(r11, fp, Operand(32)); |
216 __ ld(fp, MemOperand(r11, -8)); | 216 __ ld(fp, MemOperand(r11, -8)); |
217 #else | 217 #else |
218 __ addi(r11, fp, Operand(16)); | 218 __ addi(r11, fp, Operand(16)); |
219 __ lwz(fp, MemOperand(r11, -4)); | 219 __ lwz(fp, MemOperand(r11, -4)); |
220 #endif | 220 #endif |
221 __ mr(sp, r11); | 221 __ mr(sp, r11); |
222 __ blr(); | 222 __ blr(); |
223 | 223 |
224 CodeDesc desc; | 224 CodeDesc desc; |
225 assm.GetCode(&desc); | 225 assm.GetCode(isolate, &desc); |
226 Handle<Code> code = isolate->factory()->NewCode( | 226 Handle<Code> code = isolate->factory()->NewCode( |
227 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); | 227 desc, Code::ComputeFlags(Code::STUB), Handle<Code>()); |
228 #ifdef DEBUG | 228 #ifdef DEBUG |
229 code->Print(); | 229 code->Print(); |
230 #endif | 230 #endif |
231 F3 f = FUNCTION_CAST<F3>(code->entry()); | 231 F3 f = FUNCTION_CAST<F3>(code->entry()); |
232 t.i = 100000; | 232 t.i = 100000; |
233 t.c = 10; | 233 t.c = 10; |
234 t.s = 1000; | 234 t.s = 1000; |
235 intptr_t res = reinterpret_cast<intptr_t>( | 235 intptr_t res = reinterpret_cast<intptr_t>( |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
328 __ vldr(d1, r4, offsetof(T, m)); | 328 __ vldr(d1, r4, offsetof(T, m)); |
329 __ vneg(d0, d1); | 329 __ vneg(d0, d1); |
330 __ vstr(d0, r4, offsetof(T, m)); | 330 __ vstr(d0, r4, offsetof(T, m)); |
331 __ vldr(d1, r4, offsetof(T, n)); | 331 __ vldr(d1, r4, offsetof(T, n)); |
332 __ vneg(d0, d1); | 332 __ vneg(d0, d1); |
333 __ vstr(d0, r4, offsetof(T, n)); | 333 __ vstr(d0, r4, offsetof(T, n)); |
334 | 334 |
335 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); | 335 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); |
336 | 336 |
337 CodeDesc desc; | 337 CodeDesc desc; |
338 assm.GetCode(&desc); | 338 assm.GetCode(isolate, &desc); |
339 Object* code = isolate->heap()->CreateCode( | 339 Object* code = isolate->heap()->CreateCode( |
340 desc, | 340 desc, |
341 Code::ComputeFlags(Code::STUB), | 341 Code::ComputeFlags(Code::STUB), |
342 Handle<Code>())->ToObjectChecked(); | 342 Handle<Code>())->ToObjectChecked(); |
343 CHECK(code->IsCode()); | 343 CHECK(code->IsCode()); |
344 #ifdef DEBUG | 344 #ifdef DEBUG |
345 Code::cast(code)->Print(); | 345 Code::cast(code)->Print(); |
346 #endif | 346 #endif |
347 F3 f = FUNCTION_CAST<F3>(Code::cast(code)->entry()); | 347 F3 f = FUNCTION_CAST<F3>(Code::cast(code)->entry()); |
348 t.a = 1.5; | 348 t.a = 1.5; |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
389 CpuFeatures::Scope scope(ARMv7); | 389 CpuFeatures::Scope scope(ARMv7); |
390 // On entry, r0 = 0xAAAAAAAA = 0b10..10101010. | 390 // On entry, r0 = 0xAAAAAAAA = 0b10..10101010. |
391 __ ubfx(r0, r0, 1, 12); // 0b00..010101010101 = 0x555 | 391 __ ubfx(r0, r0, 1, 12); // 0b00..010101010101 = 0x555 |
392 __ sbfx(r0, r0, 0, 5); // 0b11..111111110101 = -11 | 392 __ sbfx(r0, r0, 0, 5); // 0b11..111111110101 = -11 |
393 __ bfc(r0, 1, 3); // 0b11..111111110001 = -15 | 393 __ bfc(r0, 1, 3); // 0b11..111111110001 = -15 |
394 __ mov(r1, Operand(7)); | 394 __ mov(r1, Operand(7)); |
395 __ bfi(r0, r1, 3, 3); // 0b11..111111111001 = -7 | 395 __ bfi(r0, r1, 3, 3); // 0b11..111111111001 = -7 |
396 __ mov(pc, Operand(lr)); | 396 __ mov(pc, Operand(lr)); |
397 | 397 |
398 CodeDesc desc; | 398 CodeDesc desc; |
399 assm.GetCode(&desc); | 399 assm.GetCode(isolate, &desc); |
400 Object* code = isolate->heap()->CreateCode( | 400 Object* code = isolate->heap()->CreateCode( |
401 desc, | 401 desc, |
402 Code::ComputeFlags(Code::STUB), | 402 Code::ComputeFlags(Code::STUB), |
403 Handle<Code>())->ToObjectChecked(); | 403 Handle<Code>())->ToObjectChecked(); |
404 CHECK(code->IsCode()); | 404 CHECK(code->IsCode()); |
405 #ifdef DEBUG | 405 #ifdef DEBUG |
406 Code::cast(code)->Print(); | 406 Code::cast(code)->Print(); |
407 #endif | 407 #endif |
408 F1 f = FUNCTION_CAST<F1>(Code::cast(code)->entry()); | 408 F1 f = FUNCTION_CAST<F1>(Code::cast(code)->entry()); |
409 int res = reinterpret_cast<int>( | 409 int res = reinterpret_cast<int>( |
(...skipping 15 matching lines...) Expand all Loading... |
425 if (CpuFeatures::IsSupported(ARMv7)) { | 425 if (CpuFeatures::IsSupported(ARMv7)) { |
426 CpuFeatures::Scope scope(ARMv7); | 426 CpuFeatures::Scope scope(ARMv7); |
427 __ usat(r1, 8, Operand(r0)); // Sat 0xFFFF to 0-255 = 0xFF. | 427 __ usat(r1, 8, Operand(r0)); // Sat 0xFFFF to 0-255 = 0xFF. |
428 __ usat(r2, 12, Operand(r0, ASR, 9)); // Sat (0xFFFF>>9) to 0-4095 = 0x7F. | 428 __ usat(r2, 12, Operand(r0, ASR, 9)); // Sat (0xFFFF>>9) to 0-4095 = 0x7F. |
429 __ usat(r3, 1, Operand(r0, LSL, 16)); // Sat (0xFFFF<<16) to 0-1 = 0x0. | 429 __ usat(r3, 1, Operand(r0, LSL, 16)); // Sat (0xFFFF<<16) to 0-1 = 0x0. |
430 __ addi(r0, r1, Operand(r2)); | 430 __ addi(r0, r1, Operand(r2)); |
431 __ addi(r0, r0, Operand(r3)); | 431 __ addi(r0, r0, Operand(r3)); |
432 __ mov(pc, Operand(lr)); | 432 __ mov(pc, Operand(lr)); |
433 | 433 |
434 CodeDesc desc; | 434 CodeDesc desc; |
435 assm.GetCode(&desc); | 435 assm.GetCode(isolate, &desc); |
436 Object* code = isolate->heap()->CreateCode( | 436 Object* code = isolate->heap()->CreateCode( |
437 desc, | 437 desc, |
438 Code::ComputeFlags(Code::STUB), | 438 Code::ComputeFlags(Code::STUB), |
439 Handle<Code>())->ToObjectChecked(); | 439 Handle<Code>())->ToObjectChecked(); |
440 CHECK(code->IsCode()); | 440 CHECK(code->IsCode()); |
441 #ifdef DEBUG | 441 #ifdef DEBUG |
442 Code::cast(code)->Print(); | 442 Code::cast(code)->Print(); |
443 #endif | 443 #endif |
444 F1 f = FUNCTION_CAST<F1>(Code::cast(code)->entry()); | 444 F1 f = FUNCTION_CAST<F1>(Code::cast(code)->entry()); |
445 int res = reinterpret_cast<int>( | 445 int res = reinterpret_cast<int>( |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
501 __ vmov(r0, s0); | 501 __ vmov(r0, s0); |
502 __ mov(pc, Operand(lr)); | 502 __ mov(pc, Operand(lr)); |
503 | 503 |
504 // The exception behaviour is not what we expected. | 504 // The exception behaviour is not what we expected. |
505 // Load a special value and return. | 505 // Load a special value and return. |
506 __ bind(&wrong_exception); | 506 __ bind(&wrong_exception); |
507 __ mov(r0, Operand(11223344)); | 507 __ mov(r0, Operand(11223344)); |
508 __ mov(pc, Operand(lr)); | 508 __ mov(pc, Operand(lr)); |
509 | 509 |
510 CodeDesc desc; | 510 CodeDesc desc; |
511 assm.GetCode(&desc); | 511 assm.GetCode(isolate, &desc); |
512 Object* code = isolate->heap()->CreateCode( | 512 Object* code = isolate->heap()->CreateCode( |
513 desc, | 513 desc, |
514 Code::ComputeFlags(Code::STUB), | 514 Code::ComputeFlags(Code::STUB), |
515 Handle<Code>())->ToObjectChecked(); | 515 Handle<Code>())->ToObjectChecked(); |
516 CHECK(code->IsCode()); | 516 CHECK(code->IsCode()); |
517 #ifdef DEBUG | 517 #ifdef DEBUG |
518 Code::cast(code)->Print(); | 518 Code::cast(code)->Print(); |
519 #endif | 519 #endif |
520 F1 f = FUNCTION_CAST<F1>(Code::cast(code)->entry()); | 520 F1 f = FUNCTION_CAST<F1>(Code::cast(code)->entry()); |
521 int res = reinterpret_cast<int>( | 521 int res = reinterpret_cast<int>( |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
689 __ vldm(ia_w, r4, s0, s3); | 689 __ vldm(ia_w, r4, s0, s3); |
690 __ vldm(ia_w, r4, s4, s7); | 690 __ vldm(ia_w, r4, s4, s7); |
691 | 691 |
692 __ addi(r4, r1, Operand(offsetof(F, a))); | 692 __ addi(r4, r1, Operand(offsetof(F, a))); |
693 __ vstm(ia_w, r4, s6, s7); | 693 __ vstm(ia_w, r4, s6, s7); |
694 __ vstm(ia_w, r4, s0, s5); | 694 __ vstm(ia_w, r4, s0, s5); |
695 | 695 |
696 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); | 696 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); |
697 | 697 |
698 CodeDesc desc; | 698 CodeDesc desc; |
699 assm.GetCode(&desc); | 699 assm.GetCode(isolate, &desc); |
700 Object* code = isolate->heap()->CreateCode( | 700 Object* code = isolate->heap()->CreateCode( |
701 desc, | 701 desc, |
702 Code::ComputeFlags(Code::STUB), | 702 Code::ComputeFlags(Code::STUB), |
703 Handle<Code>())->ToObjectChecked(); | 703 Handle<Code>())->ToObjectChecked(); |
704 CHECK(code->IsCode()); | 704 CHECK(code->IsCode()); |
705 #ifdef DEBUG | 705 #ifdef DEBUG |
706 Code::cast(code)->Print(); | 706 Code::cast(code)->Print(); |
707 #endif | 707 #endif |
708 F4 fn = FUNCTION_CAST<F4>(Code::cast(code)->entry()); | 708 F4 fn = FUNCTION_CAST<F4>(Code::cast(code)->entry()); |
709 d.a = 1.1; | 709 d.a = 1.1; |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
805 __ vldm(ia, r4, s4, s7); | 805 __ vldm(ia, r4, s4, s7); |
806 | 806 |
807 __ addi(r4, r1, Operand(offsetof(F, a))); | 807 __ addi(r4, r1, Operand(offsetof(F, a))); |
808 __ vstm(ia, r4, s6, s7); | 808 __ vstm(ia, r4, s6, s7); |
809 __ addi(r4, r4, Operand(2 * 4)); | 809 __ addi(r4, r4, Operand(2 * 4)); |
810 __ vstm(ia, r4, s0, s5); | 810 __ vstm(ia, r4, s0, s5); |
811 | 811 |
812 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); | 812 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); |
813 | 813 |
814 CodeDesc desc; | 814 CodeDesc desc; |
815 assm.GetCode(&desc); | 815 assm.GetCode(isolate, &desc); |
816 Object* code = isolate->heap()->CreateCode( | 816 Object* code = isolate->heap()->CreateCode( |
817 desc, | 817 desc, |
818 Code::ComputeFlags(Code::STUB), | 818 Code::ComputeFlags(Code::STUB), |
819 Handle<Code>())->ToObjectChecked(); | 819 Handle<Code>())->ToObjectChecked(); |
820 CHECK(code->IsCode()); | 820 CHECK(code->IsCode()); |
821 #ifdef DEBUG | 821 #ifdef DEBUG |
822 Code::cast(code)->Print(); | 822 Code::cast(code)->Print(); |
823 #endif | 823 #endif |
824 F4 fn = FUNCTION_CAST<F4>(Code::cast(code)->entry()); | 824 F4 fn = FUNCTION_CAST<F4>(Code::cast(code)->entry()); |
825 d.a = 1.1; | 825 d.a = 1.1; |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
917 __ vldm(db_w, r4, s4, s7); | 917 __ vldm(db_w, r4, s4, s7); |
918 __ vldm(db_w, r4, s0, s3); | 918 __ vldm(db_w, r4, s0, s3); |
919 | 919 |
920 __ addi(r4, r1, Operand(offsetof(F, h) + 4)); | 920 __ addi(r4, r1, Operand(offsetof(F, h) + 4)); |
921 __ vstm(db_w, r4, s0, s5); | 921 __ vstm(db_w, r4, s0, s5); |
922 __ vstm(db_w, r4, s6, s7); | 922 __ vstm(db_w, r4, s6, s7); |
923 | 923 |
924 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); | 924 __ ldm(ia_w, sp, r4.bit() | fp.bit() | pc.bit()); |
925 | 925 |
926 CodeDesc desc; | 926 CodeDesc desc; |
927 assm.GetCode(&desc); | 927 assm.GetCode(isolate, &desc); |
928 Object* code = isolate->heap()->CreateCode( | 928 Object* code = isolate->heap()->CreateCode( |
929 desc, | 929 desc, |
930 Code::ComputeFlags(Code::STUB), | 930 Code::ComputeFlags(Code::STUB), |
931 Handle<Code>())->ToObjectChecked(); | 931 Handle<Code>())->ToObjectChecked(); |
932 CHECK(code->IsCode()); | 932 CHECK(code->IsCode()); |
933 #ifdef DEBUG | 933 #ifdef DEBUG |
934 Code::cast(code)->Print(); | 934 Code::cast(code)->Print(); |
935 #endif | 935 #endif |
936 F4 fn = FUNCTION_CAST<F4>(Code::cast(code)->entry()); | 936 F4 fn = FUNCTION_CAST<F4>(Code::cast(code)->entry()); |
937 d.a = 1.1; | 937 d.a = 1.1; |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1015 | 1015 |
1016 __ mov(r1, Operand(0xffffffff)); | 1016 __ mov(r1, Operand(0xffffffff)); |
1017 __ mov(r2, Operand::Zero()); | 1017 __ mov(r2, Operand::Zero()); |
1018 __ mov(r3, Operand(r2, ASR, 1), SetCC); // Unset the carry. | 1018 __ mov(r3, Operand(r2, ASR, 1), SetCC); // Unset the carry. |
1019 __ adc(r3, r1, Operand(r2)); | 1019 __ adc(r3, r1, Operand(r2)); |
1020 __ str(r3, MemOperand(r0, offsetof(I, d))); | 1020 __ str(r3, MemOperand(r0, offsetof(I, d))); |
1021 | 1021 |
1022 __ mov(pc, Operand(lr)); | 1022 __ mov(pc, Operand(lr)); |
1023 | 1023 |
1024 CodeDesc desc; | 1024 CodeDesc desc; |
1025 assm.GetCode(&desc); | 1025 assm.GetCode(isolate, &desc); |
1026 Object* code = isolate->heap()->CreateCode( | 1026 Object* code = isolate->heap()->CreateCode( |
1027 desc, | 1027 desc, |
1028 Code::ComputeFlags(Code::STUB), | 1028 Code::ComputeFlags(Code::STUB), |
1029 Handle<Code>())->ToObjectChecked(); | 1029 Handle<Code>())->ToObjectChecked(); |
1030 CHECK(code->IsCode()); | 1030 CHECK(code->IsCode()); |
1031 #ifdef DEBUG | 1031 #ifdef DEBUG |
1032 Code::cast(code)->Print(); | 1032 Code::cast(code)->Print(); |
1033 #endif | 1033 #endif |
1034 F3 f = FUNCTION_CAST<F3>(Code::cast(code)->entry()); | 1034 F3 f = FUNCTION_CAST<F3>(Code::cast(code)->entry()); |
1035 Object* dummy = CALL_GENERATED_CODE(isolate, f, &i, 0, 0, 0, 0); | 1035 Object* dummy = CALL_GENERATED_CODE(isolate, f, &i, 0, 0, 0, 0); |
(...skipping 15 matching lines...) Expand all Loading... |
1051 Assembler assm(isolate, NULL, 0); | 1051 Assembler assm(isolate, NULL, 0); |
1052 Label target; | 1052 Label target; |
1053 __ b(eq, &target); | 1053 __ b(eq, &target); |
1054 __ b(ne, &target); | 1054 __ b(ne, &target); |
1055 __ bind(&target); | 1055 __ bind(&target); |
1056 __ nop(); | 1056 __ nop(); |
1057 } | 1057 } |
1058 #endif | 1058 #endif |
1059 | 1059 |
1060 #undef __ | 1060 #undef __ |
OLD | NEW |