source: benchmark/fetch_add.c @ ff2a33e

ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
Last change on this file since ff2a33e was dc33b5b, checked in by Peter A. Buhr <pabuhr@…>, 5 years ago

update benchmarks and add benchmarks for qthreads

  • Property mode set to 100644
File size: 368 bytes
RevLine 
[6aa537a4]1#include <stdio.h>
2
3#include "bench.h"
4
5volatile int value;
6
7void __attribute__((noinline)) do_call() {
8        __atomic_add_fetch( &value, 1, __ATOMIC_SEQ_CST );
9        asm volatile ("");
10        __atomic_sub_fetch( &value, 1, __ATOMIC_SEQ_CST );
11}
12
13int main(int argc, char* argv[]) {
14        BENCH(
15                for (size_t i = 0; i < n; i++) {
16                        do_call();
17                },
18                result
19        )
20
[dc33b5b]21        printf("%g\n", result);
[6aa537a4]22}
Note: See TracBrowser for help on using the repository browser.