From b00555136c7caf69cc4ee3512072d0605ec26f67 Mon Sep 17 00:00:00 2001 From: Marcel Moolenaar Date: Fri, 15 Aug 2003 05:46:33 +0000 Subject: [PATCH] Add an instruction group break after the move to application register and the move to control register to avoid dependency violations when these functions are used. Note that explicit data and instruction serialization also need to be in a subsequent instruction group. This too requires that we have an igrp break here. --- sys/ia64/include/ia64_cpu.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/ia64/include/ia64_cpu.h b/sys/ia64/include/ia64_cpu.h index 35f1f4fe7bf..3e9f767728e 100644 --- a/sys/ia64/include/ia64_cpu.h +++ b/sys/ia64/include/ia64_cpu.h @@ -284,7 +284,7 @@ ia64_get_##name(void) \ static __inline void \ ia64_set_##name(u_int64_t v) \ { \ - __asm __volatile("mov ar." #name "=%0" :: "r" (v)); \ + __asm __volatile("mov ar." #name "=%0;;" :: "r" (v)); \ } IA64_AR(k0) @@ -340,7 +340,7 @@ ia64_get_##name(void) \ static __inline void \ ia64_set_##name(u_int64_t v) \ { \ - __asm __volatile("mov cr." #name "=%0" :: "r" (v)); \ + __asm __volatile("mov cr." #name "=%0;;" :: "r" (v)); \ } IA64_CR(dcr)