/* Generated by ./xlat/gen.sh from ./xlat/cpuclocknames.in; do not edit. */

static const struct xlat cpuclocknames[] = {
#if defined(CPUCLOCK_PROF) || (defined(HAVE_DECL_CPUCLOCK_PROF) && HAVE_DECL_CPUCLOCK_PROF)
	XLAT(CPUCLOCK_PROF),
#endif
#if defined(CPUCLOCK_VIRT) || (defined(HAVE_DECL_CPUCLOCK_VIRT) && HAVE_DECL_CPUCLOCK_VIRT)
	XLAT(CPUCLOCK_VIRT),
#endif
#if defined(CPUCLOCK_SCHED) || (defined(HAVE_DECL_CPUCLOCK_SCHED) && HAVE_DECL_CPUCLOCK_SCHED)
	XLAT(CPUCLOCK_SCHED),
#endif
	XLAT_END
};
