freebsd-dev/sys/sparc64/include
Jake Burkholder 92fed30a07 Use the vis block copy/zero functions for pmap_copy_page and pmap_zero_page.
These are called through function pointers so that different implementations
can be provided for cheetah, where the block load instructions may or may
not be a win, and so they can be disabled with the machdep.use_vis tunable.
In terms of raw bandwidth the integer versions are faster, but not allocating
lines in the L2 cache for useless data gives a measurable improvement in user
time for the benchmarks I tested (mostly buildworld with -j8).

As far as I can tell the instructions used are implemented on everything
back to UltraSPARC I, so there should not be a problem with different cpu
types.
2003-04-06 17:05:26 +00:00
..
_inttypes.h Since printf(3) now supports the `j' conversion specifier, use that 2002-06-30 05:48:03 +00:00
_limits.h Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
_stdint.h Create a new header <machine/_stdint.h> for storing MD parts of 2002-07-29 17:41:23 +00:00
_types.h - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
asi.h Add ASI definitions of UltraSPARC-III (Cu) processors, and add some 2002-07-16 16:22:25 +00:00
asm.h
asmacros.h Add pmap support for user mappings of multiple page sizes (super pages). 2002-08-18 02:09:27 +00:00
atomic.h Make the atomic arithmetic functions return the old value, since they're 2002-12-21 08:53:26 +00:00
bus_common.h Always initialize the UPA target module id in the interrupt mapping 2002-12-01 23:30:26 +00:00
bus_memio.h
bus_pio.h
bus_private.h Fixes for a number of problems in the IOMMU code: 2003-01-21 18:22:26 +00:00
bus.h Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
cache.h - Remove unused cache flushing routines. These will not necessary work 2003-03-19 06:55:37 +00:00
ccr.h
clock.h Add two extern's for adjkerntz and wall_cmos_clock, all other 2002-10-05 20:14:49 +00:00
cpu.h Add declarations for btext and etext. 2002-07-28 01:01:14 +00:00
cpufunc.h Use the vis block copy/zero functions for pmap_copy_page and pmap_zero_page. 2003-04-06 17:05:26 +00:00
critical.h
db_machdep.h
eeprom.h Add missing header for the eeprom driver frontents. 2002-04-05 02:40:54 +00:00
elf.h Make imgact_elf32.c compile on sparc64. 2003-01-05 03:48:55 +00:00
endian.h Be careful not to define GCC-specific optimizations in the non-GCC 2002-09-23 04:32:17 +00:00
exec.h
float.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
floatingpoint.h
fp.h - Rename pcb_fpstate to pcb_ufp (user floating point), and change it to 2003-04-01 04:02:45 +00:00
frame.h - Expand struct trapframe to 256 bytes, make all fields fixed width and the 2002-10-22 18:03:15 +00:00
fsr.h Clean up a bit, and add some more macros to access %fsr fields. 2002-09-14 17:58:54 +00:00
idprom.h
ieee.h
ieeefp.h Use the definitions in machine/fsr.h instead of duplicating these magic 2002-09-14 18:00:44 +00:00
in_cksum.h
instr.h Add new UltraSPARC-III VIS II instructions. 2002-07-16 17:44:01 +00:00
intr_machdep.h Renamed intr_enqueue to intr_vector and intr_dequeue to intr_fast, to 2002-09-28 03:06:35 +00:00
iommureg.h Some cleanup: 2003-01-06 17:10:07 +00:00
iommuvar.h Implement bus_dmamem_alloc_size() and bus_dmamem_free_size() as 2003-01-29 07:25:27 +00:00
kerneldump.h Add kernel dump support, based on the ia64 version (which was committed 2002-10-20 17:03:15 +00:00
kse.h Add files that are new for KSE. 2002-06-29 07:04:59 +00:00
ktr.h Provide an implementation of KTR_CPU that doesn't use pcpu, so we don't 2002-04-06 08:40:59 +00:00
limits.h Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
lsu.h Add new LSU bits for UltraSPARC-III. 2002-07-16 16:24:03 +00:00
md_var.h Use the vis block copy/zero functions for pmap_copy_page and pmap_zero_page. 2003-04-06 17:05:26 +00:00
metadata.h Use a contrived 'tlb_entry' structure for passing the mappings for the 2002-05-29 05:49:59 +00:00
mutex.h
nexusvar.h
ofw_bus.h Add two new workaround for firmware anomalies: 2002-11-07 16:07:46 +00:00
ofw_machdep.h
ofw_mem.h Add kernel dump support, based on the ia64 version (which was committed 2002-10-20 17:03:15 +00:00
ofw_nexus.h
ofw_upa.h
param.h Get rid of the TODO macro in the few places that still need work; either 2002-10-01 06:34:21 +00:00
pcb.h - Add space for kernel floating point registers to the pcb. These will be 2003-04-03 18:28:03 +00:00
pcpu.h Remove unused fields. 2003-03-18 08:15:24 +00:00
pmap.h - Remove unused cache flushing routines. These will not necessary work 2003-03-19 06:55:37 +00:00
proc.h Remove unneeded include. 2002-05-08 04:21:58 +00:00
profile.h Add definitions for statistical and high-resolution profiling. The calling 2002-07-30 06:14:34 +00:00
pstate.h
ptrace.h
reg.h - Expand struct trapframe to 256 bytes, make all fields fixed width and the 2002-10-22 18:03:15 +00:00
reloc.h
resource.h
runq.h Move the "- 1" into the RQB_FFS(mask) macro itself so that 2002-06-20 06:21:20 +00:00
setjmp.h Fix namespace issues by using visibility conditionals from 2002-10-05 05:47:56 +00:00
sigframe.h
signal.h Split 4.x and 5.x signal handling so that we can keep 4.x signal 2002-10-25 19:10:58 +00:00
smp.h - Remove unused cache flushing routines. These will not necessary work 2003-03-19 06:55:37 +00:00
stdarg.h o Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:01:07 +00:00
sysarch.h Add support for an alternate signal trampoline; add a sysarch call to register 2002-04-29 18:08:26 +00:00
tick.h Initialize tick_MHz and related variables much earlier. After the last 2002-10-25 17:42:14 +00:00
tlb.h - Change the way the direct mapped region is implemented to be generally 2002-12-23 23:39:57 +00:00
trap.h Greatly improve readability of trap() by using a table to convert between 2002-10-25 16:00:47 +00:00
tsb.h Add pmap support for user mappings of multiple page sizes (super pages). 2002-08-18 02:09:27 +00:00
tstate.h
tte.h Handle the fictitious pages created by the device pager. For fictitious 2003-03-27 02:16:31 +00:00
ucontext.h Don't allow user process to set an invalid window state through sigreturn. 2003-01-10 00:04:56 +00:00
upa.h
utrap.h Don peril sensitive sun glasses and change the default system call vector 2002-10-27 17:22:43 +00:00
varargs.h Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
ver.h Add two new workaround for firmware anomalies: 2002-11-07 16:07:46 +00:00
vmparam.h Define UMA_MD_SMALL_ALLOC so that uma_small_alloc and uma_small_free will 2002-12-27 19:31:26 +00:00
watch.h
wstate.h