Signed-off-by: Gleb Natapov <gleb@xxxxxxxxxx> --- kvm/user/test/x86/emulator.c | 22 ++++++++++++++-------- roms/seabios | 2 +- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/kvm/user/test/x86/emulator.c b/kvm/user/test/x86/emulator.c index c6adbb5..db84c13 100644 --- a/kvm/user/test/x86/emulator.c +++ b/kvm/user/test/x86/emulator.c @@ -17,18 +17,11 @@ void report(const char *name, int result) } } -void test_cmps(void *mem) +void test_cmps_one(unsigned char *m1, unsigned char *m3) { - unsigned char *m1 = mem, *m2 = mem + 1024; - unsigned char m3[1024]; void *rsi, *rdi; long rcx, tmp; - for (int i = 0; i < 100; ++i) - m1[i] = m2[i] = m3[i] = i; - for (int i = 100; i < 200; ++i) - m1[i] = (m3[i] = m2[i] = i) + 1; - rsi = m1; rdi = m3; rcx = 30; asm volatile("xor %[tmp], %[tmp] \n\t" "repe/cmpsb" @@ -91,6 +84,19 @@ void test_cmps(void *mem) } +void test_cmps(void *mem) +{ + unsigned char *m1 = mem, *m2 = mem + 1024; + unsigned char m3[1024]; + + for (int i = 0; i < 100; ++i) + m1[i] = m2[i] = m3[i] = i; + for (int i = 100; i < 200; ++i) + m1[i] = (m3[i] = m2[i] = i) + 1; + test_cmps_one(m1, m3); + test_cmps_one(m1, m2); +} + void test_cr8(void) { unsigned long src, dst; diff --git a/roms/seabios b/roms/seabios index 8f469b9..0360e8e 160000 --- a/roms/seabios +++ b/roms/seabios @@ -1 +1 @@ -Subproject commit 8f469b9676127ba6bb52609d89ec774e61db0ee1 +Subproject commit 0360e8e69bb3a773ceb9d2b091b62c027bca862b -- 1.6.5 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html