score: Add _CPU_Get_current_per_CPU_control()

Add optional method _CPU_Get_current_per_CPU_control() to obtain the
per-CPU control of the current processor.

This is optional.  Not every CPU port needs this.  It is only an
optional optimization variant.  In case this macro is undefined, the
default implementation using the current processor index will be used.
sparc: Optimize context switch

The registers g2 through g4 are reserved for applications.  GCC uses
them as volatile registers by default.  So they are treated like
volatile registers in RTEMS as well.
sparc: Document register g7 usage
sparc: Add _CPU_Get_current_per_CPU_control()

Use register g6 for the per-CPU control of the current processor.  The
register g6 is reserved for the operating system by the SPARC ABI.  On
Linux register g6 is used for a similar purpose with the same method
since 1996.

The register g6 must be initialized during system startup and then must
remain unchanged.

Since the per-CPU control is used in all critical sections of the
operating system, this is a performance optimization for the operating
system core procedures.  An additional benefit is that the low-level
context switch and interrupt processing code is now identical on non-SMP
and SMP configurations.
sapi: Add arithmetic means to XML profiling report
sapi: Add profiling done message
score: Avoid copy and paste