# SPARC specific config options

## select ARCH_SUPPORTS_32
## select ARCH_SUPPORTS_64
## select ARCH_DEFAULT_32
## select ARCH_USE_MMU
## select ARCH_SUPPORT_CPU
## select ARCH_SUPPORT_TUNE
##
## help The SUN SPARC architecture, as defined by:
## help     32 bit: http://www.sparc.org/standards/V8.pdf
## help     64 bit: http://www.sparc.org/standards/SPARCV9.pdf
