CPU Performance Counters Library Functions cpc_version(3CPC)
NAME
cpc_version - coordinate CPC library and application ver-
sionsSYNOPSIS
cc [ flag... ] file... -lcpc [ library... ]
#include
uint_t cpc_version(uint_t version);
DESCRIPTION
The cpc_version() function takes an interface version as an
argument and returns an interface version as a result. Usu-
ally, the argument will be the value of CPC_VER_CURRENT
bound to the application when it was compiled.RETURN VALUES
If the version requested is still supported by the implemen-
tation, cpc_version() returns the requested version number
and the application can use the facilities of the library on that platform. If the implementation cannot support theversion needed by the application, cpc_version() returns
CPC_VER_NONE, indicating that the application will at least
need to be recompiled to operate correctly on the new plat-
form, and may require further changes.If version is CPC_VER_NONE, cpc_version() returns the most
current version of the library.EXAMPLES
Example 1 Protect an application from using an incompatible library. The following lines of code protect an application from using an incompatible library:if (cpc_version(CPC_VER_CURRENT) == CPC_VER_NONE) {
/* version mismatch - library cannot translate */
exit(1); }ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 28 Mar 2005 1
CPU Performance Counters Library Functions cpc_version(3CPC)
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | Unsafe |
|_____________________________|_____________________________|
SEE ALSO
cpc(3CPC), cpc_open(3CPC), libcpc(3LIB), attributes(5)
NOTESThe cpc_version() function exists for binary compatibility
only. Source containing this function will not compile. This function is obsolete and might be removed in a futurerelease. Applications should use cpc_open(3CPC) instead.
The version number is used only to express incompatible semantic changes in the performance counter interfaces onthe given platform within a single instruction set architec-
ture, for example, when a new set of performance counter registers are added to an existing processor family thatcannot be specified in the existing cpc_event_t data struc-
ture.SunOS 5.11 Last change: 28 Mar 2005 2