Index: src/arm/lithium-arm.cc |
=================================================================== |
--- src/arm/lithium-arm.cc (revision 7299) |
+++ src/arm/lithium-arm.cc (working copy) |
@@ -1773,6 +1773,21 @@ |
} |
+LInstruction* LChunkBuilder::DoLoadNamedFieldPolymorphic( |
+ HLoadNamedFieldPolymorphic* instr) { |
+ ASSERT(instr->representation().IsTagged()); |
+ if (instr->need_generic()) { |
+ LOperand* obj = UseFixed(instr->object(), r0); |
+ LLoadNamedFieldPolymorphic* result = new LLoadNamedFieldPolymorphic(obj); |
+ return MarkAsCall(DefineFixed(result, r0), instr); |
+ } else { |
+ LOperand* obj = UseRegisterAtStart(instr->object()); |
+ LLoadNamedFieldPolymorphic* result = new LLoadNamedFieldPolymorphic(obj); |
+ return AssignEnvironment(DefineAsRegister(result)); |
+ } |
+} |
+ |
+ |
LInstruction* LChunkBuilder::DoLoadNamedGeneric(HLoadNamedGeneric* instr) { |
LOperand* object = UseFixed(instr->object(), r0); |
LInstruction* result = DefineFixed(new LLoadNamedGeneric(object), r0); |