Ensure that external pixel arrays use a byte register in Crankshaft.

BUG=v8:1406
TEST=fast/canvas/canvas-putImageData.html

Review URL: http://codereview.chromium.org/7067028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
whesse@chromium.org 2011-05-24 16:23:22 +00:00
parent ce77e9499d
commit cc14935ddf

View File

@ -2004,7 +2004,8 @@ LInstruction* LChunkBuilder::DoStoreKeyedSpecializedArrayElement(
LOperand* key = UseRegisterOrConstant(instr->key()); LOperand* key = UseRegisterOrConstant(instr->key());
LOperand* val = NULL; LOperand* val = NULL;
if (array_type == kExternalByteArray || if (array_type == kExternalByteArray ||
array_type == kExternalUnsignedByteArray) { array_type == kExternalUnsignedByteArray ||
array_type == kExternalPixelArray) {
// We need a byte register in this case for the value. // We need a byte register in this case for the value.
val = UseFixed(instr->value(), eax); val = UseFixed(instr->value(), eax);
} else { } else {