Index: runtime/vm/native_arguments.h |
diff --git a/runtime/vm/native_arguments.h b/runtime/vm/native_arguments.h |
index 7035a50b53cfc1c87b2203d711f328c16343390b..67b1f72773b775237316342674247658d0327b8f 100644 |
--- a/runtime/vm/native_arguments.h |
+++ b/runtime/vm/native_arguments.h |
@@ -107,6 +107,18 @@ class NativeArguments { |
return *arg_ptr; |
} |
+ void SetArgAt(int index, const Object& value) const { |
+ ASSERT((index >= 0) && (index < ArgCount())); |
+#if defined(TARGET_ARCH_DBC) |
+ // On DBC stack is growing upwards, in reverse direction from all other |
+ // architectures. |
+ RawObject** arg_ptr = &(argv_[index]); |
Florian Schneider
2016/08/10 02:32:14
Since this is not used on DBC, maybe rather make i
rmacnak
2016/08/11 00:17:49
Remove altogether after removing monomorphic case
|
+#else |
+ RawObject** arg_ptr = &(argv_[-index]); |
+#endif |
+ *arg_ptr = value.raw(); |
+ } |
+ |
bool IsNativeAutoSetupScope() const { |
return AutoSetupScopeBits::decode(argc_tag_); |
} |