f624800b84
I was forced to manually do update the following files, because otherwise they would be ignored according .gitignore settings. Probably they should be deleted from repo. Interop/.idea/compiler.xml Interop/.idea/gradle.xml Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_runtime_1_0_3.xml Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_0_3.xml Interop/.idea/modules.xml Interop/.idea/modules/Indexer/Indexer.iml Interop/.idea/modules/Runtime/Runtime.iml Interop/.idea/modules/StubGenerator/StubGenerator.iml backend.native/backend.native.iml backend.native/bc.frontend/bc.frontend.iml backend.native/cli.bc/cli.bc.iml backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2Native.kt backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt backend.native/tests/link/lib/foo.kt backend.native/tests/link/lib/foo2.kt backend.native/tests/teamcity-test.property
68 lines
1.1 KiB
Objective-C
68 lines
1.1 KiB
Objective-C
#import <objc/NSObject.h>
|
|
#include <simd/simd.h>
|
|
|
|
@interface PrimitiveTestSubject : NSObject
|
|
|
|
+ (int)intFn;
|
|
+ (float)floatFn;
|
|
+ (double)doubleFn;
|
|
+ (simd_float4)simdFn;
|
|
|
|
@end;
|
|
|
|
typedef struct {
|
|
float f;
|
|
} SingleFloat;
|
|
|
|
typedef struct __attribute__((packed)) {
|
|
char f1;
|
|
short f2;
|
|
char f3;
|
|
char f4;
|
|
} SimplePacked;
|
|
|
|
typedef struct __attribute__((packed)) {
|
|
char x;
|
|
short y;
|
|
char z;
|
|
} EvenSmallerPacked;
|
|
|
|
typedef struct {
|
|
float f1;
|
|
float f2;
|
|
float f3;
|
|
float f4;
|
|
} HomogeneousSmall;
|
|
|
|
typedef struct {
|
|
float f1;
|
|
float f2;
|
|
float f3;
|
|
float f4;
|
|
float f5;
|
|
float f6;
|
|
float f7;
|
|
float f8;
|
|
} HomogeneousBig;
|
|
|
|
// TODO: Add more cases later: SIMD, bitfields.
|
|
|
|
typedef struct {
|
|
short s1;
|
|
simd_float4 v2;
|
|
float f3;
|
|
int i4;
|
|
} GeterogeneousSmall;
|
|
|
|
@interface AggregateTestSubject : NSObject
|
|
|
|
+ (SingleFloat)singleFloatFn;
|
|
+ (SimplePacked)simplePackedFn;
|
|
+ (EvenSmallerPacked)evenSmallerPackedFn;
|
|
+ (HomogeneousSmall)homogeneousSmallFn;
|
|
+ (HomogeneousBig)homogeneousBigFn;
|
|
+ (simd_quatf)simd_quatfFn;
|
|
+ (GeterogeneousSmall)geterogeneousSmallFn;
|
|
|
|
|
|
@end; |