fixes for PIC code on x86-64 patch by (Drew Hess <drew.hess gmail com>)
Originally committed as revision 3757 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
		
							parent
							
								
									caacd4deea
								
							
						
					
					
						commit
						a2c3bf82a7
					
				@ -224,11 +224,20 @@ static inline float floorf(float f) {
 | 
			
		||||
 | 
			
		||||
#    include "bswap.h"
 | 
			
		||||
 | 
			
		||||
// Use rip-relative addressing if compiling PIC code on x86-64.
 | 
			
		||||
#    if defined(__MINGW32__) || defined(__CYGWIN__) || \
 | 
			
		||||
        defined(__OS2__) || (defined (__OpenBSD__) && !defined(__ELF__))
 | 
			
		||||
#        define MANGLE(a) "_" #a
 | 
			
		||||
#        if defined(ARCH_X86_64) && defined(PIC)
 | 
			
		||||
#            define MANGLE(a) "_" #a"(%%rip)"
 | 
			
		||||
#        else
 | 
			
		||||
#            define MANGLE(a) "_" #a
 | 
			
		||||
#        endif
 | 
			
		||||
#    else
 | 
			
		||||
#        define MANGLE(a) #a
 | 
			
		||||
#        if defined(ARCH_X86_64) && defined(PIC)
 | 
			
		||||
#            define MANGLE(a) #a"(%%rip)"
 | 
			
		||||
#        else
 | 
			
		||||
#            define MANGLE(a) #a
 | 
			
		||||
#        endif
 | 
			
		||||
#    endif
 | 
			
		||||
 | 
			
		||||
/* debug stuff */
 | 
			
		||||
 | 
			
		||||
@ -8,12 +8,21 @@
 | 
			
		||||
#define __MANGLE_H
 | 
			
		||||
 | 
			
		||||
/* Feel free to add more to the list, eg. a.out IMO */
 | 
			
		||||
/* Use rip-relative addressing if compiling PIC code on x86-64. */
 | 
			
		||||
#if defined(__CYGWIN__) || defined(__MINGW32__) || defined(__OS2__) || \
 | 
			
		||||
   (defined(__OpenBSD__) && !defined(__ELF__))
 | 
			
		||||
#if defined(ARCH_X86_64) && defined(PIC)
 | 
			
		||||
#define MANGLE(a) "_" #a"(%%rip)"
 | 
			
		||||
#else
 | 
			
		||||
#define MANGLE(a) "_" #a
 | 
			
		||||
#endif
 | 
			
		||||
#else
 | 
			
		||||
#if defined(ARCH_X86_64) && defined(PIC)
 | 
			
		||||
#define MANGLE(a) #a"(%%rip)"
 | 
			
		||||
#else
 | 
			
		||||
#define MANGLE(a) #a
 | 
			
		||||
#endif
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif /* !__MANGLE_H */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user