Changeset 41544 in webkit for trunk/JavaScriptCore/jit/JIT.cpp
- Timestamp:
- Mar 9, 2009, 6:09:44 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/jit/JIT.cpp
r41508 r41544 283 283 } 284 284 285 #define RECORD_JUMP_TARGET(targetOffset) \ 286 do { m_labels[m_bytecodeIndex + (targetOffset)].used(); } while (false) 287 285 288 void JIT::privateCompileMainPass() 286 289 { … … 300 303 #endif 301 304 305 if (m_labels[m_bytecodeIndex].isUsed()) 306 killLastResultRegister(); 307 302 308 m_labels[m_bytecodeIndex] = label(); 303 309 OpcodeID opcodeID = m_interpreter->getOpcodeID(currentInstruction->u.opcode); … … 340 346 unsigned target = currentInstruction[1].u.operand; 341 347 addJump(jump(), target + 1); 348 RECORD_JUMP_TARGET(target + 1); 342 349 NEXT_OPCODE(op_jmp); 343 350 } … … 746 753 addJump(branch32(GreaterThanOrEqual, regT0, regT1), target + 3); 747 754 } 755 RECORD_JUMP_TARGET(target + 3); 748 756 NEXT_OPCODE(op_jnless); 749 757 } … … 767 775 768 776 isNonZero.link(this); 777 RECORD_JUMP_TARGET(target + 2); 769 778 NEXT_OPCODE(op_jfalse); 770 779 }; … … 787 796 788 797 wasNotImmediate.link(this); 798 RECORD_JUMP_TARGET(target + 2); 789 799 NEXT_OPCODE(op_jeq_null); 790 800 }; … … 807 817 808 818 wasNotImmediate.link(this); 819 RECORD_JUMP_TARGET(target + 2); 809 820 NEXT_OPCODE(op_jneq_null); 810 821 } … … 825 836 addJump(jump(), target + 2); 826 837 m_jsrSites.append(JSRInfo(storeLocation, label())); 838 killLastResultRegister(); 839 RECORD_JUMP_TARGET(target + 2); 827 840 NEXT_OPCODE(op_jsr); 828 841 } 829 842 case op_sret: { 830 843 jump(Address(callFrameRegister, sizeof(Register) * currentInstruction[1].u.operand)); 844 killLastResultRegister(); 831 845 NEXT_OPCODE(op_sret); 832 846 } … … 893 907 894 908 isZero.link(this); 909 RECORD_JUMP_TARGET(target + 2); 895 910 NEXT_OPCODE(op_jtrue); 896 911 } … … 1032 1047 unsigned target = currentInstruction[2].u.operand; 1033 1048 addJump(jump(), target + 2); 1049 RECORD_JUMP_TARGET(target + 2); 1034 1050 NEXT_OPCODE(op_jmp_scopes); 1035 1051 }
Note:
See TracChangeset
for help on using the changeset viewer.