unicorn/qemu/accel/tcg
Emilio G. Cota c384da2f47
tcg: convert tb->cflags reads to tb_cflags(tb)
Convert all existing readers of tb->cflags to tb_cflags, so that we
use atomic_read and therefore avoid undefined behaviour in C11.

Note that the remaining setters/getters of the field are protected
by tb_lock, and therefore do not need conversion.

Luckily all readers access the field via 'tb->cflags' (so no foo.cflags,
bar->cflags in the code base), which makes the conversion easily
scriptable:

FILES=$(git grep 'tb->cflags' target include/exec/gen-icount.h \
accel/tcg/translator.c | cut -f1 -d':' | sort | uniq)

perl -pi -e 's/([^.>])tb->cflags/$1tb_cflags(tb)/g' $FILES
perl -pi -e 's/([a-z->.]*)(->|\.)tb->cflags/tb_cflags($1$2tb)/g' $FILES

Then manually fixed the few errors that checkpatch reported.

Compile-tested for all targets.

Backports commit c5a49c63fa26e8825ad101dfe86339ae4c216539 from qemu
2018-03-13 14:57:51 -04:00
..
atomic_template.h accel/tcg: move atomic_template.h to accel/tcg/ 2018-03-13 12:28:50 -04:00
cpu-exec-common.c tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
cpu-exec.c tcg: Add CPUState cflags_next_tb 2018-03-13 14:39:43 -04:00
cputlb.c tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
Makefile.objs tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
softmmu_template.h accel/tcg: move softmmu_template.h to accel/tcg/ 2018-03-13 12:27:04 -04:00
tcg-runtime-gvec.c tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
tcg-runtime.c tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK 2018-03-13 14:32:43 -04:00
tcg-runtime.h tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
translate-all.c tcg: Add CPUState cflags_next_tb 2018-03-13 14:39:43 -04:00
translate-all.h tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
translate-common.c tcg: move tcg backend files into accel/tcg/ 2018-03-13 11:48:15 -04:00
translator.c tcg: convert tb->cflags reads to tb_cflags(tb) 2018-03-13 14:57:51 -04:00