On 31/03/2010 12:13, Мартин Бохниг wrote:
2010/3/31 Мартин Бохниг<mar...@martux.org>:
The UltraSPARC-specific VIS block move instruction performs a 64-byte transfer t
hat is both cache coherent and nonpolluting. This feature IS USED by the platfor
m-specific libc bcopy, bzero, memcpy, memmove, memset, memcmp operations.

But not strcpy(), sprintf(), right?




To avoid ambiguity: The problem is, that as far as I know the
platform-specific versions of libc are still closed src binary-only
releases. Otherwise we could of course just look at ON how they
implemented the platform-specific libc-versions.

Please check the source first using opengrok or cscope, the platform specific versions of all those functions are open source:

bcopy/bzero are wrappers around memmove/memset respectively see:

http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/common/util/

For the platform implementations for sparc and sun4v in particular see these directories:

http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libc/sparcv9/gen/

http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libc_psr/sun4v/common/

Most of libc is open, you can probably infer from the name of the .a file in the closed-bins.tar (libc_i18n.a) what is closed from libc.

--
Darren J Moffat
_______________________________________________
opensolaris-code mailing list
opensolaris-code@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code

Reply via email to