On Tue, 18 Feb 2025 at 21:22, Keith Packard via <qemu-devel@nongnu.org> wrote: > > Functions which modify virtual machine state (such as virtual > registers stored in memory) must not be marked TCG_CALL_NO_WG
More accurately, functions which write to TCG globals. It's fine for a function which modifies virtual machine state to be marked TCG_CALL_NO_WG as long as that virtual machine state isn't stored in a TCG global. > as that > tells the optimizer that virtual registers values already loaded in > machine registers are still valid, hence discards any changes which > these helpers may have made. This seems to also mean that functions which > set condition codes may also not use this flag ...because target/rx makes the (sensible) choice to put its condition codes in TCG globals. > Signed-off-by: Keith Packard <kei...@keithp.com> > --- > target/rx/helper.h | 34 +++++++++++++++++----------------- > 1 file changed, 17 insertions(+), 17 deletions(-) Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> thanks -- PMM