Fixes to IA32 code generator to cope with new

code generation machinery.
Review URL: http://codereview.chromium.org/13244

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
erik.corry@gmail.com 2008-12-08 10:33:10 +00:00
parent 1c7c655193
commit c642237b78

View File

@ -150,7 +150,7 @@ void RegExpMacroAssemblerIA32::CheckBitmap(uc16 start,
__ movzx_b(ebx, Operand(ecx, ebx, times_1, 0));
__ and_(eax, (1<<3)-1);
__ bt(Operand(ebx), eax);
__ j(carry, on_zero);
BranchOrBacktrack(carry, on_zero);
}
@ -203,7 +203,7 @@ void RegExpMacroAssemblerIA32::CheckCharacters(Vector<const uc16> str,
__ cmpw(Operand(esi, edi, times_1, byte_offset + i * sizeof(uc16)),
Immediate(str[i]));
}
__ j(not_equal, on_failure);
BranchOrBacktrack(not_equal, on_failure);
}
return;
}
@ -574,7 +574,7 @@ Handle<Object> RegExpMacroAssemblerIA32::GetCode(Handle<String> source) {
void RegExpMacroAssemblerIA32::GoTo(Label* to) {
__ jmp(to);
BranchOrBacktrack(no_condition, to);
}
@ -662,7 +662,7 @@ void RegExpMacroAssemblerIA32::WriteCurrentPositionToRegister(int reg,
if (cp_offset == 0) {
__ mov(register_location(reg), edi);
} else {
__ lea(eax, Operand(edi, cp_offset));
__ lea(eax, Operand(edi, cp_offset * char_size()));
__ mov(register_location(reg), eax);
}
}