Index: src/x64/lithium-x64.cc |
diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc |
index b4c716768aefac77b0757e0b25ca3a49787b0af7..eeafe57911a015a91784f5b709bcd88ec1936d77 100644 |
--- a/src/x64/lithium-x64.cc |
+++ b/src/x64/lithium-x64.cc |
@@ -2057,7 +2057,9 @@ LInstruction* LChunkBuilder::DoStoreContextSlot(HStoreContextSlot* instr) { |
LInstruction* LChunkBuilder::DoLoadNamedField(HLoadNamedField* instr) { |
- if (instr->access().IsExternalMemory() && instr->access().offset() == 0) { |
+ if (instr->access().IsExternalMemory() && |
+ !instr->access().representation().IsSpecialization() && |
mvstanton
2013/10/02 11:13:12
Could you add a comment to summarize this decision
Benedikt Meurer
2013/10/02 11:48:06
Done.
|
+ instr->access().offset() == 0) { |
LOperand* obj = UseRegisterOrConstantAtStart(instr->object()); |
return DefineFixed(new(zone()) LLoadNamedField(obj), rax); |
} |