OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions | 5 // modification, are permitted provided that the following conditions |
6 // are met: | 6 // are met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
568 Address Assembler::target_address_at(Address pc) { | 568 Address Assembler::target_address_at(Address pc) { |
569 return target_pointer_at(pc); | 569 return target_pointer_at(pc); |
570 } | 570 } |
571 | 571 |
572 | 572 |
573 void Assembler::set_target_address_at(Address pc, Address target) { | 573 void Assembler::set_target_address_at(Address pc, Address target) { |
574 set_target_pointer_at(pc, target); | 574 set_target_pointer_at(pc, target); |
575 } | 575 } |
576 | 576 |
577 | 577 |
578 void Assembler::emit_it(Condition cond) { | 578 bool Assembler::emit_it(Condition cond) { |
579 if (cond != al) { | 579 if (cond != al) { |
580 it_thumb(cond, 1); | 580 it_thumb(cond, 1); |
| 581 return true; |
581 } | 582 } |
| 583 return false; |
582 } | 584 } |
583 | 585 |
584 | 586 |
| 587 bool Assembler::it_block_smode_check(bool is_in_it_block, SBitMode smode) { |
| 588 return (is_in_it_block && smode != SetCC) || |
| 589 (!is_in_it_block && smode != LeaveCC); |
| 590 } |
| 591 |
| 592 |
585 Address Assembler::AlignAddress(Address addr) { | 593 Address Assembler::AlignAddress(Address addr) { |
586 return (Address)((uint32_t)addr &(~3)); | 594 return (Address)((uint32_t)addr &(~3)); |
587 } | 595 } |
588 | 596 |
589 | 597 |
590 Address Assembler::UntagAddress(Address addr) { | 598 Address Assembler::UntagAddress(Address addr) { |
591 return (Address)((uint32_t)addr & (~1)); | 599 return (Address)((uint32_t)addr & (~1)); |
592 } | 600 } |
593 | 601 |
594 | 602 |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
647 return; | 655 return; |
648 } else if (IsThumbLdrPcImmediateOffset(instr)) { | 656 } else if (IsThumbLdrPcImmediateOffset(instr)) { |
649 Memory::Address_at(thumb_target_pointer_address_at(pc)) = target; | 657 Memory::Address_at(thumb_target_pointer_address_at(pc)) = target; |
650 return; | 658 return; |
651 } | 659 } |
652 } | 660 } |
653 | 661 |
654 } } // namespace v8::internal | 662 } } // namespace v8::internal |
655 | 663 |
656 #endif // V8_ARM_ASSEMBLER_ARM_INL_H_ | 664 #endif // V8_ARM_ASSEMBLER_ARM_INL_H_ |
OLD | NEW |