From 6eff7da03e7232cf9175ebf2489b2b16dc696a53 Mon Sep 17 00:00:00 2001 From: Stefan Berger Date: Mon, 9 Nov 2020 17:51:08 -0500 Subject: [PATCH] [LibOS] regression: Remove unnecessary asm from pthread_set_get_affinity --- .../shim/test/regression/pthread_set_get_affinity.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/LibOS/shim/test/regression/pthread_set_get_affinity.c b/LibOS/shim/test/regression/pthread_set_get_affinity.c index 7c1ab998..e3ffecbe 100644 --- a/LibOS/shim/test/regression/pthread_set_get_affinity.c +++ b/LibOS/shim/test/regression/pthread_set_get_affinity.c @@ -25,14 +25,10 @@ pthread_barrier_t barrier; /* Run a busy loop for some iterations, so that we can verify affinity with htop manually */ static void* dowork(void* args) { - uint64_t* iterations = (uint64_t*)args; - __asm__ volatile ( - "movq %0, %%rax\n" - "loop:\n" - "dec %%rax\n" - "cmp $0, %%rax\n" - "jne loop\n" - : /*no outs*/ : "m"(*iterations) : "rax", "cc"); + volatile uint64_t iterations = *(uint64_t*)args; + + while (iterations != 0) + iterations--; int ret = pthread_barrier_wait(&barrier); if (ret != 0 && ret != PTHREAD_BARRIER_SERIAL_THREAD) {