CVSROOT:        /cvs
Module name:    src
Changes by:     aoy...@cvs.openbsd.org  2021/02/23 04:48:21

Modified files:
        sys/arch/luna88k/luna88k: machdep.c 

Log message:
Make more efficient clearing interrupts on all processors at boot time.

Without this modification, because of the volatile qualifier, the
compiler does not produce four `` = 0 '' assignments, but code
equivalent to:

*(volatile uint32_t *)INT_ST_MASK3 = 0;
*(volatile uint32_t *)INT_ST_MASK2 =
*(volatile uint32_t *)INT_ST_MASK3;
*(volatile uint32_t *)INT_ST_MASK1 =
*(volatile uint32_t *)INT_ST_MASK2;
*(volatile uint32_t *)INT_ST_MASK0 =
*(volatile uint32_t *)INT_ST_MASK1;

Anders Gavare reported to Miod Vallat, and he gave me a diff.

Reply via email to