summaryrefslogtreecommitdiff
path: root/tests/src/JIT/jit64/mcc/interop/native_i8c.cpp
diff options
context:
space:
mode:
authorHongtao Yu <hoy@microsoft.com>2015-12-08 20:32:22 -0800
committerHongtao Yu <hoy@microsoft.com>2015-12-09 13:00:56 -0800
commitbb07af3e0b0e6bf2b9b733ac8b9acd4936e04141 (patch)
treed622505760aab44a2393cc00633af3764e924e0a /tests/src/JIT/jit64/mcc/interop/native_i8c.cpp
parentc339949d5c69ff7b4e0d79514ae93b66c63769a2 (diff)
downloadcoreclr-bb07af3e0b0e6bf2b9b733ac8b9acd4936e04141.tar.gz
coreclr-bb07af3e0b0e6bf2b9b733ac8b9acd4936e04141.tar.bz2
coreclr-bb07af3e0b0e6bf2b9b733ac8b9acd4936e04141.zip
Port interopt tests
Disable tests using stdcall pinvoke calls for non-windows platform. jit\jit64\mcc\interop\mcc_i00.il jit\jit64\mcc\interop\mcc_i01.il jit\jit64\mcc\interop\mcc_i02.il jit\jit64\mcc\interop\mcc_i03.il jit\jit64\mcc\interop\mcc_i04.il jit\jit64\mcc\interop\mcc_i05.il jit\jit64\mcc\interop\mcc_i06.il jit\jit64\mcc\interop\mcc_i07.il jit\jit64\mcc\interop\mcc_i14.il jit\jit64\mcc\interop\mcc_i15.il jit\jit64\mcc\interop\mcc_i16.il jit\jit64\mcc\interop\mcc_i17.il jit\jit64\mcc\interop\mcc_i30.il jit\jit64\mcc\interop\mcc_i31.il jit\jit64\mcc\interop\mcc_i32.il jit\jit64\mcc\interop\mcc_i32.il jit\jit64\mcc\interop\mcc_i33.il jit\jit64\mcc\interop\mcc_i34.il jit\jit64\mcc\interop\mcc_i35.il jit\jit64\mcc\interop\mcc_i36.il jit\jit64\mcc\interop\mcc_i37.il jit\jit64\mcc\interop\mcc_i50.il jit\jit64\mcc\interop\mcc_i51.il jit\jit64\mcc\interop\mcc_i52.il jit\jit64\mcc\interop\mcc_i53.il jit\jit64\mcc\interop\mcc_i54.il jit\jit64\mcc\interop\mcc_i55.il jit\jit64\mcc\interop\mcc_i56.il jit\jit64\mcc\interop\mcc_i57.il jit\jit64\mcc\interop\mcc_i60.il jit\jit64\mcc\interop\mcc_i61.il jit\jit64\mcc\interop\mcc_i62.il jit\jit64\mcc\interop\mcc_i63.il jit\jit64\mcc\interop\mcc_i64.il jit\jit64\mcc\interop\mcc_i65.il jit\jit64\mcc\interop\mcc_i66.il jit\jit64\mcc\interop\mcc_i67.il jit\jit64\mcc\interop\mcc_i70.il jit\jit64\mcc\interop\mcc_i71.il jit\jit64\mcc\interop\mcc_i72.il jit\jit64\mcc\interop\mcc_i73.il jit\jit64\mcc\interop\mcc_i74.il jit\jit64\mcc\interop\mcc_i75.il jit\jit64\mcc\interop\mcc_i76.il jit\jit64\mcc\interop\mcc_i77.il jit\jit64\mcc\interop\mcc_i80.il jit\jit64\mcc\interop\mcc_i81.il jit\jit64\mcc\interop\mcc_i82.il jit\jit64\mcc\interop\mcc_i83.il jit\jit64\mcc\interop\mcc_i84.il jit\jit64\mcc\interop\mcc_i85.il jit\jit64\mcc\interop\mcc_i86.il jit\jit64\mcc\interop\mcc_i87.il Disable all tests for non-windows due to dll name resolution
Diffstat (limited to 'tests/src/JIT/jit64/mcc/interop/native_i8c.cpp')
-rw-r--r--tests/src/JIT/jit64/mcc/interop/native_i8c.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/src/JIT/jit64/mcc/interop/native_i8c.cpp b/tests/src/JIT/jit64/mcc/interop/native_i8c.cpp
new file mode 100644
index 0000000000..dd024dfc4c
--- /dev/null
+++ b/tests/src/JIT/jit64/mcc/interop/native_i8c.cpp
@@ -0,0 +1,26 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+#include <stdarg.h>
+#include "native.h"
+
+
+MCC_API VType8 __cdecl sum(double count1, int count2, __int64 count3, float count4, short count5, double count6, ...) {
+ int count = (int)count1 + (int)count2 + (int)count3 + (int)count4 + (int)count5 + (int)count6;
+ VType8 res;
+ va_list args;
+
+ // zero out res
+ res.reset();
+
+ // initialize variable arguments.
+ va_start(args, count6);
+ for (int i = 0; i < count; ++i) {
+ VType8 val = va_arg(args, VType8);
+ res.add(val);
+ }
+ // reset variable arguments.
+ va_end(args);
+
+ return res;
+}