Index: src/builtins/ia32/builtins-ia32.cc |
diff --git a/src/builtins/ia32/builtins-ia32.cc b/src/builtins/ia32/builtins-ia32.cc |
index b2522f49b90f138eda8686f3a0ab6de45e69dfe0..bcffedfef2ba51010fbfff161b626e0b1a82a4a9 100644 |
--- a/src/builtins/ia32/builtins-ia32.cc |
+++ b/src/builtins/ia32/builtins-ia32.cc |
@@ -2009,8 +2009,13 @@ |
// 3b. Convert symbol in eax to a string. |
__ bind(&symbol_descriptive_string); |
- __ mov(eax, FieldOperand(eax, Symbol::kDescriptiveStringOffset)); |
- // Fall through. |
+ { |
+ __ PopReturnAddressTo(ecx); |
+ __ lea(esp, Operand(esp, ebx, times_pointer_size, kPointerSize)); |
+ __ Push(eax); |
+ __ PushReturnAddressFrom(ecx); |
+ __ TailCallRuntime(Runtime::kSymbolDescriptiveString); |
+ } |
__ bind(&drop_frame_and_ret); |
{ |