37 lines · c
1// RUN: %clang_cl -MD -c -o %t %s2// RUN: %llvm_jitlink %t 2>&1 | FileCheck %s3// CHECK: init14// CHECK-NEXT: init25// CHECK-NEXT: init36 7#include <stdio.h>8 9int init1() {10 printf("init1\n");11 return 0;12}13 14int init2() {15 printf("init2\n");16 return 0;17}18 19int init3() {20 printf("init3\n");21 return 0;22}23 24#pragma section(".CRT$XIX", long, read)25__declspec(allocate(".CRT$XIX")) int (*i3)(void) = init3;26 27#pragma section(".CRT$XIV", long, read)28__declspec(allocate(".CRT$XIV")) int (*i1)(void) = init1;29 30#pragma section(".CRT$XIW", long, read)31__declspec(allocate(".CRT$XIW")) int (*i2)(void) = init2;32 33int main(int argc, char *argv[]) {34 fflush(stdout);35 return 0;36}37