annotate libpostproc/mangle.h @ 2391:336a239ad9a4 libavcodec

fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
author michael
date Sat, 18 Dec 2004 03:07:15 +0000
parents 556b5d0b5228
children 038e1b4f9afd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
1 /* mangle.h - This file has some CPP macros to deal with different symbol
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
2 * mangling across binary formats.
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
3 * (c)2002 by Felix Buenemann <atmosfear at users.sourceforge.net>
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
4 * File licensed under the GPL, see http://www.fsf.org/ for more info.
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
5 */
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
6
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
7 #ifndef __MANGLE_H
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
8 #define __MANGLE_H
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
9
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
10 /* Feel free to add more to the list, eg. a.out IMO */
2391
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
11 /* Use rip-relative addressing if compiling PIC code on x86-64. */
1161
556b5d0b5228 mangle on mingw32 patch by ("Sascha Sommer" <saschasommer at freenet dot de>)
michaelni
parents: 1069
diff changeset
12 #if defined(__CYGWIN__) || defined(__MINGW32__) || defined(__OS2__) || \
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
13 (defined(__OpenBSD__) && !defined(__ELF__))
2391
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
14 #if defined(ARCH_X86_64) && defined(PIC)
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
15 #define MANGLE(a) "_" #a"(%%rip)"
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
16 #else
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
17 #define MANGLE(a) "_" #a
2391
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
18 #endif
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
19 #else
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
20 #if defined(ARCH_X86_64) && defined(PIC)
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
21 #define MANGLE(a) #a"(%%rip)"
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
22 #else
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
23 #define MANGLE(a) #a
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
24 #endif
2391
336a239ad9a4 fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
michael
parents: 1161
diff changeset
25 #endif
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
26
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
27 #endif /* !__MANGLE_H */
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents:
diff changeset
28