NetBSD/sys/arch/x68k
is df61f0409e From the 68040 User Manual, page 4-10:
"To fully support self-modifying code in any situation, it is imperative that
a CPUSHA intrcution is executed before the execution of the first self-modified
instruction. The CPUSHA instruction has the effect of ensuring that there is
no stale data iin memory, the pipeline is flushed, and instruction prefetches
are repeated and taken from external memory."

I verified that this is the only way (I can think of) to make the sigtramp
regression test work on 68040. doing cpushl dc; cinvl ic; over the affected
address range, then nop (to synchronize the pipeline) is not enough; apparently
the nop does not FLUSH the pipeline and prefetch...

Note that the 68060 UM has copied the above cited passage, but in fact this is
not true. This might be connected to the fact that the 68060 does ensure
memory access order under most conditions.
1999-11-25 20:30:38 +00:00
..
compile NetBSD/x68k, by Masaru Oki. 1996-05-05 12:17:03 +00:00
conf Add missing `major' entries: md and fd. 1999-11-23 14:17:09 +00:00
dev defopt COM_DEBUG, COM_HAYESP, and COM16650 1999-11-22 03:53:38 +00:00
include Rip protection against multiple inclusion from wrapper headers. 1999-11-09 21:34:03 +00:00
stand Add a bunch of "__attribute__((__packed__))"s 1999-11-22 01:14:55 +00:00
usr.bin Merged minoura_x68k_bus_h branch. 1999-03-16 16:30:16 +00:00
usr.sbin Merged minoura_x68k_bus_h branch. 1999-03-16 16:30:16 +00:00
x68k From the 68040 User Manual, page 4-10: 1999-11-25 20:30:38 +00:00
Makefile Rework the way kernel include files are installed. In the new method, 1998-06-12 23:22:30 +00:00