Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/tools/perf/arch/x86/util/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 833 B image not shown  

Quelle  cpuid.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef PERF_CPUID_H
#define PERF_CPUID_H 1


static inline void
cpuid(unsigned int op, unsigned int op2, unsigned int *a, unsigned int *b,
 unsigned int *c, unsigned int *d)
{
 /*
 * Preserve %ebx/%rbx register by either placing it in %rdi or saving it
 * on the stack - x86-64 needs to avoid the stack red zone. In PIC
 * compilations %ebx contains the address of the global offset
 * table. %rbx is occasionally used to address stack variables in
 * presence of dynamic allocas.
 */

 asm(
#if defined(__x86_64__)
  "mov %%rbx, %%rdi\n"
  "cpuid\n"
  "xchg %%rdi, %%rbx\n"
#else
  "pushl %%ebx\n"
  "cpuid\n"
  "movl %%ebx, %%edi\n"
  "popl %%ebx\n"
#endif
  : "=a"(*a), "=D"(*b), "=c"(*c), "=d"(*d)
  : "a"(op), "2"(op2));
}

void get_cpuid_0(char *vendor, unsigned int *lvl);

#endif

Messung V0.5
C=93 H=98 G=95

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.