[Mono-list] Mono on Xeon Phi

Yury Serdyuk Yury at serdyuk.botik.ru
Tue Feb 5 12:35:11 UTC 2013


Rodrigo Kumpera wrote:

> Fix the configure script to not do the check. Look at its history for 
> cross-compilation related fixes.
>
OK,  I've commented some checks like
1) checking for clang
2) checking for preceeding underscore ...
3) checking for pthread
4) checking for sigaltstack
So the configure is good now.

Trying to make, I've got more serious error:

>   CC     mono-context.lo
> icc: command line warning #10006: ignoring unknown option 
> '-Wno-unused-but-set-variable'
> icc: command line warning #10006: ignoring unknown option 
> '-Wnested-externs'
> icc: command line warning #10006: ignoring unknown option 
> '-Wno-switch-enum'
>   CC     hazard-pointer.lo
> icc: command line warning #10006: ignoring unknown option 
> '-Wno-unused-but-set-variable'
> icc: command line warning #10006: ignoring unknown option 
> '-Wnested-externs'
> icc: command line warning #10006: ignoring unknown option 
> '-Wno-switch-enum'
> /tmp/iccVlIdYwas_.s: Assembler messages:
> /tmp/iccVlIdYwas_.s:23: Error: `sfence' is not supported on `k1om'
> make[4]: *** [hazard-pointer.lo] Error 1
> make[4]: Leaving directory `/home/ips_serdyuk/mono-3.0.1/mono/utils'

I think that a problem place is the following function from 
hazard-pointer.c:

> static gboolean
> is_pointer_hazardous (gpointer p)
> {
>         int i, j;
>         int highest = highest_small_id;
>
>         g_assert (highest < hazard_table_size);
>
>         for (i = 0; i <= highest; ++i) {
>                 for (j = 0; j < HAZARD_POINTER_COUNT; ++j) {
>                         if (hazard_table [i].hazard_pointers [j] == p)
>                                 return TRUE;
>                         LOAD_LOAD_FENCE;
>                 }
>         }
>
>         return FALSE;
> }


How about this error ?
Are there some simple ways to workaround it?

Thanks.

Yury


More information about the Mono-list mailing list