提交 023367e6 编写于 作者: W Wolfgang Mauerer 提交者: Stefan Hajnoczi

vhost build fix for i386

vhost.c uses __sync_fetch_and_and(), which is only
available for -march=i486 and above (see
https://bugzilla.redhat.com/show_bug.cgi?id=624279).
Signed-off-by: NWolfgang Mauerer <wolfgang.mauerer@siemens.com>
Signed-off-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
上级 c886edfb
......@@ -2509,6 +2509,29 @@ if test "$trace_backend" = "dtrace"; then
fi
fi
##########################################
# __sync_fetch_and_and requires at least -march=i486. Many toolchains
# use i686 as default anyway, but for those that don't, an explicit
# specification is necessary
if test $vhost_net = "yes" && test $cpu = "i386"; then
cat > $TMPC << EOF
int sfaa(unsigned *ptr)
{
return __sync_fetch_and_and(ptr, 0);
}
int main(int argc, char **argv)
{
int val = 42;
sfaa(&val);
return val;
}
EOF
if ! compile_prog "" "" ; then
CFLAGS+="-march=i486"
fi
fi
##########################################
# End of CC checks
# After here, no more $cc or $ld runs
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册