Port-m68k archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

is __insn_barrier() needed in _splraise()

working on kern/38637 it turns out that some ports define splhigh
as a macro or __inline, and the compiler may optimise thing
wrongly if it's not properly defined (softint_schedule() in this example,
where the compiler is not aware that sh_flags may have changed before
and after the call to splhigh()).

m68k ports has an inline splhigh (_splraise() really); and I couldn't
determine if the assembly in this function is a barrier for
the compiler, or if a __insn_barrier() is needed here. Can someone
confirms it ?

Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference

Home | Main Index | Thread Index | Old Index