[PATCH] Make wine build with the Intel CC
Eric Pouech
eric.pouech at wanadoo.fr
Mon Apr 23 14:44:04 CDT 2007
Alexandre Julliard a écrit :
> Jonathan Schleifer <js at h3c.de> writes:
>
>
>> Eric Pouech <eric.pouech at wanadoo.fr> wrote:
>>
>>
>>> it seems now the major hurdle is that icc doesn't support
>>> the inline conventions of GCC (and is likely C99 compliant in that
>>>
>> ICC supports gcc inline asm. But it doesn't support defining a symbol
>> twice.
>>
>
> What version are you using? According to the man page this is
> supposed to be fixed in icc 9.1.
>
>
it's fixed for C functions, but not when the function is declared in
assembly
extern inline int foo(int a);
extern inline int foo(int a) {return a + 1;}
int foo(int a) {return a+1;}
extern inline int ffo(int a);
extern inline int ffo(int a) {return a + 1;}
int ffo(int a) {return a+1;}
__asm__( ".text\n\t"
".align 4\n\t"
".globl ffo\n\t"
".type ffo, at function\n"
"ffo:\n\tret\n"
"\n\t.previous" );
[eric at localhost wine-git]$ /opt2/intel/cc/9.1.047/bin/icc -c ~/icc2.c
/home/eric/icc2.c(3): warning #290: function "foo" has already been defined
int foo(int a) {return a+1;}
^
/home/eric/icc2.c(6): warning #290: function "ffo" has already been defined
int ffo(int a) {return a+1;}
^
IPO: WARNING: File scope asm disables -ipo
/home/eric/tmp/icc5IgzlBas_.s: Assembler messages:
/home/eric/tmp/icc5IgzlBas_.s:40: Error: symbol `ffo' is already defined
(and embedding the asm code into a dummy function doesn't help either)
A+
--
Eric Pouech
"The problem with designing something completely foolproof is to underestimate the ingenuity of a complete idiot." (Douglas Adams)
More information about the wine-devel
mailing list