Changeset 40963 in webkit for trunk/JavaScriptCore/assembler/MacroAssemblerX86Common.h
- Timestamp:
- Feb 12, 2009, 8:22:02 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/assembler/MacroAssemblerX86Common.h
r40846 r40963 120 120 } 121 121 122 // Take the value from dividend, divide it by divisor, and put the remainder in remainder.123 // For now, this operation has specific register requirements, and the three register must124 // be unique. It is unfortunate to expose this in the MacroAssembler interface, however125 // given the complexity to fix, the fact that it is not uncommmon for processors to have126 // specific register requirements on this operation (e.g. Mips result in 'hi'), or to not127 // support a hardware divide at all, it may not be128 void mod32(RegisterID divisor, RegisterID dividend, RegisterID remainder)129 {130 #ifdef NDEBUG131 #pragma unused(dividend,remainder)132 #else133 ASSERT((dividend == X86::eax) && (remainder == X86::edx));134 ASSERT((dividend != divisor) && (remainder != divisor));135 #endif136 137 m_assembler.cdq();138 m_assembler.idivl_r(divisor);139 }140 141 122 void mul32(RegisterID src, RegisterID dest) 142 123 {
Note:
See TracChangeset
for help on using the changeset viewer.