When processing collected uint32 instructions skip those with non-Integer32 representation.

R=danno@chromium.org
BUG=test262 S15.4.4.8_A2_T3.js

Review URL: https://chromiumcodereview.appspot.com/10867017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12369 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
vegorov@chromium.org 2012-08-22 19:00:02 +00:00
parent 8ae899584f
commit 96f55352fc

View File

@ -2933,7 +2933,9 @@ void HGraph::ComputeSafeUint32Operations() {
Uint32Analysis analysis(zone()); Uint32Analysis analysis(zone());
for (int i = 0; i < uint32_instructions_->length(); ++i) { for (int i = 0; i < uint32_instructions_->length(); ++i) {
HInstruction* current = uint32_instructions_->at(i); HInstruction* current = uint32_instructions_->at(i);
if (current->IsLinked()) analysis.Analyze(current); if (current->IsLinked() && current->representation().IsInteger32()) {
analysis.Analyze(current);
}
} }
// Some phis might have been optimistically marked with kUint32 flag. // Some phis might have been optimistically marked with kUint32 flag.