Allow to compile with modern gcc-4.x compiler, which make some sophisticated

loop optimizations.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@782 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Stanislaw Gruszka
2009-04-16 11:57:46 +00:00
parent 7863eed840
commit 8bf107d9fb
+8
View File
@@ -2604,6 +2604,14 @@ isp_fclink_test(ispsoftc_t *isp, int chan, int usdelay)
ISP_SLEEP(isp, wrk);
} else {
while (enano > (uint64_t) 4000000000U) {
#if defined(__GNUC__) && (__GNUC__ >= 4)
/*
* Prevent to optimize loop, gcc assume libgcc.a
* with __udivdi3 is linked, but this is not
* true when building (linux) kernel
*/
asm("" : "+rm" (enano));
#endif
count += 4000000;
enano -= (uint64_t) 4000000000U;
}