• James Hogan's avatar
    MIPS: mipsregs.h: Make read_c0_prid use const accessor · 6538953f
    James Hogan authored
    Make read_c0_prid() use the new constant accessor macros so that it can
    potentially be optimised or removed by the compiler. This is
    particularly important under virtualisation, where even with hardware
    assisted virtualisation (VZ), access to the PRid register may need to be
    emulated by the hypervisor.
    
    In particular this helps eliminate the read of the PRid register in the
    rather frequently called add_interrupt_randomness() (which calls into
    arch/mips/include/asm/timex.h) when the prid is unused but the read
    can't be removed due to the inline asm being marked __volatile__.
    Reported-by: default avatarYann LeDu <Yann.LeDu@imgtec.com>
    Signed-off-by: default avatarJames Hogan <jhogan@kernel.org>
    Cc: Ralf Baechle <ralf@linux-mips.org>
    Cc: Maciej W. Rozycki <macro@mips.com>
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/17923/
    6538953f
mipsregs.h 88.7 KB