Add data serialisations after ptc and mov to rr[] instructions.

This commit is contained in:
Doug Rabson 2001-10-23 10:20:04 +00:00
parent 2b30bcbb41
commit 378749743c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=85356

View file

@ -205,7 +205,7 @@ ia64_tpa(u_int64_t va)
static __inline void
ia64_ptc_e(u_int64_t v)
{
__asm __volatile("ptc.e %0;;" :: "r"(v));
__asm __volatile("ptc.e %0;; srlz.d;;" :: "r"(v));
}
/*
@ -214,7 +214,7 @@ ia64_ptc_e(u_int64_t v)
static __inline void
ia64_ptc_g(u_int64_t va, u_int64_t log2size)
{
__asm __volatile("ptc.g %0,%1;;" :: "r"(va), "r"(log2size));
__asm __volatile("ptc.g %0,%1;; srlz.d;;" :: "r"(va), "r"(log2size));
}
/*
@ -223,7 +223,7 @@ ia64_ptc_g(u_int64_t va, u_int64_t log2size)
static __inline void
ia64_ptc_ga(u_int64_t va, u_int64_t log2size)
{
__asm __volatile("ptc.ga %0,%1;;" :: "r"(va), "r"(log2size));
__asm __volatile("ptc.ga %0,%1;; srlz.d;;" :: "r"(va), "r"(log2size));
}
/*
@ -232,7 +232,7 @@ ia64_ptc_ga(u_int64_t va, u_int64_t log2size)
static __inline void
ia64_ptc_l(u_int64_t va, u_int64_t log2size)
{
__asm __volatile("ptc.l %0,%1;;" :: "r"(va), "r"(log2size));
__asm __volatile("ptc.l %0,%1;; srlz.d;;" :: "r"(va), "r"(log2size));
}
/*
@ -472,7 +472,8 @@ ia64_get_lid(void)
static __inline void
ia64_set_rr(u_int64_t rrbase, u_int64_t v)
{
__asm __volatile("mov rr[%0]=%1" :: "r"(rrbase), "r"(v) : "memory");
__asm __volatile("mov rr[%0]=%1;; srlz.d;;"
:: "r"(rrbase), "r"(v) : "memory");
}
/*