1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#if defined(_MSC_VER)
8
9/* Reference list of existing section for msvcrt. */
10#pragma section(".CRTMP$XCA", long, read)
11#pragma section(".CRTMP$XCZ", long, read)
12#pragma section(".CRTMP$XIA", long, read)
13#pragma section(".CRTMP$XIZ", long, read)
14
15#pragma section(".CRTMA$XCA", long, read)
16#pragma section(".CRTMA$XCZ", long, read)
17#pragma section(".CRTMA$XIA", long, read)
18#pragma section(".CRTMA$XIZ", long, read)
19
20#pragma section(".CRTVT$XCA", long, read)
21#pragma section(".CRTVT$XCZ", long, read)
22
23#pragma section(".CRT$XCA", long, read)
24#pragma section(".CRT$XCAA", long, read)
25#pragma section(".CRT$XCC", long, read)
26#pragma section(".CRT$XCZ", long, read)
27#pragma section(".CRT$XDA", long, read)
28#pragma section(".CRT$XDC", long, read)
29#pragma section(".CRT$XDZ", long, read)
30#pragma section(".CRT$XIA", long, read)
31#pragma section(".CRT$XIAA", long, read)
32#pragma section(".CRT$XIC", long, read)
33#pragma section(".CRT$XID", long, read)
34#pragma section(".CRT$XIY", long, read)
35#pragma section(".CRT$XIZ", long, read)
36#pragma section(".CRT$XLA", long, read)
37#pragma section(".CRT$XLC", long, read)
38#pragma section(".CRT$XLD", long, read)
39#pragma section(".CRT$XLZ", long, read)
40#pragma section(".CRT$XPA", long, read)
41#pragma section(".CRT$XPX", long, read)
42#pragma section(".CRT$XPXA", long, read)
43#pragma section(".CRT$XPZ", long, read)
44#pragma section(".CRT$XTA", long, read)
45#pragma section(".CRT$XTB", long, read)
46#pragma section(".CRT$XTX", long, read)
47#pragma section(".CRT$XTZ", long, read)
48#pragma section(".rdata$T", long, read)
49#pragma section(".rtc$IAA", long, read)
50#pragma section(".rtc$IZZ", long, read)
51#pragma section(".rtc$TAA", long, read)
52#pragma section(".rtc$TZZ", long, read)
53/* for tlssup.c: */
54#pragma section(".tls", long)
55#pragma section(".tls$AAA", long)
56#pragma section(".tls$ZZZ", long)
57#endif /* _MSC_VER */
58
59#if defined(_MSC_VER)
60#define _CRTALLOC(x) __declspec(allocate(x))
61#elif defined(__GNUC__)
62#define _CRTALLOC(x) __attribute__ ((section (x), used))
63#else
64#error Your compiler is not supported.
65#endif