diff options
author | couriersud <couriersud@arcor.de> | 2015-01-06 04:03:39 +0100 |
---|---|---|
committer | couriersud <couriersud@arcor.de> | 2015-01-06 04:03:39 +0100 |
commit | 7ddd65cbc1e8d1769202b4dbbde439f74fecf263 (patch) | |
tree | 5447c22ccf1e6fcc0848c35c1e8473e381d10914 | |
parent | 594bfc43b4f304ca0942c056cf26aba20f312928 (diff) |
Minor code path optimization. (nw)
-rw-r--r-- | src/osd/modules/sync/work_osd.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/osd/modules/sync/work_osd.c b/src/osd/modules/sync/work_osd.c index 636344f6f80..4c9d0bd4a22 100644 --- a/src/osd/modules/sync/work_osd.c +++ b/src/osd/modules/sync/work_osd.c @@ -106,9 +106,13 @@ static void spin_while(const volatile _PtrType * volatile ptr, const _PtrType va osd_yield_processor(); #else do { - int spin = 100000; - while (--spin && ((*ptr == val) ^ invert)) - osd_yield_processor(); + int spin = 10000; + while (--spin) + { + //osd_yield_processor(); + if ((*ptr == val) ^ invert) + return; + } } while (((*ptr == val) ^ invert) && osd_ticks() < stopspin); #endif } |