Index: pkg/compiler/lib/src/cps_ir/cps_fragment.dart |
diff --git a/pkg/compiler/lib/src/cps_ir/cps_fragment.dart b/pkg/compiler/lib/src/cps_ir/cps_fragment.dart |
index 57c9647e15f5b7164bb7aaf2e80bfb3b1c039b82..a4bd305f9f58737621f6ce1d5a4ad933d708a2a1 100644 |
--- a/pkg/compiler/lib/src/cps_ir/cps_fragment.dart |
+++ b/pkg/compiler/lib/src/cps_ir/cps_fragment.dart |
@@ -130,11 +130,14 @@ class CpsFragment { |
/// Inserts an invocation and returns a primitive holding the returned value. |
Primitive invokeMethod(Primitive receiver, |
- Selector selector, |
- TypeMask mask, |
- List<Primitive> arguments) { |
- return letPrim(new InvokeMethod(receiver, selector, mask, arguments, |
- sourceInformation)); |
+ Selector selector, |
+ TypeMask mask, |
+ List<Primitive> arguments, |
+ [CallingConvention callingConvention = CallingConvention.Normal]) { |
+ InvokeMethod invoke = |
+ new InvokeMethod(receiver, selector, mask, arguments, sourceInformation) |
+ ..callingConvention = callingConvention; |
+ return letPrim(invoke); |
} |
/// Inserts an invocation and returns a primitive holding the returned value. |