Annotation of Gnu-Mach/i386/imps/cpu_number.h, revision 1.1.1.1

1.1       root        1: /* 
                      2:  * Copyright (c) 1994 The University of Utah and
                      3:  * the Computer Systems Laboratory at the University of Utah (CSL).
                      4:  * All rights reserved.
                      5:  *
                      6:  * Permission to use, copy, modify and distribute this software is hereby
                      7:  * granted provided that (1) source code retains these copyright, permission,
                      8:  * and disclaimer notices, and (2) redistributions including binaries
                      9:  * reproduce the notices in supporting documentation, and (3) all advertising
                     10:  * materials mentioning features or use of this software display the following
                     11:  * acknowledgement: ``This product includes software developed by the
                     12:  * Computer Systems Laboratory at the University of Utah.''
                     13:  *
                     14:  * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
                     15:  * IS" CONDITION.  THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
                     16:  * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     17:  *
                     18:  * CSL requests users of this software to return to [email protected] any
                     19:  * improvements that they make and grant CSL redistribution rights.
                     20:  *
                     21:  *      Author: Bryan Ford, University of Utah CSL
                     22:  */
                     23: #ifndef _IMPS_CPU_NUMBER_
                     24: #define _IMPS_CPU_NUMBER_
                     25: 
                     26: 
                     27: #ifndef ASSEMBLER
                     28: 
                     29: #include "apic.h"
                     30: 
                     31: static inline int
                     32: cpu_number()
                     33: {
                     34:        return apic_local_unit.unit_id.r >> 24;
                     35: }
                     36: 
                     37: #else ASSEMBLER
                     38: 
                     39: #include "impsasm.h"
                     40: 
                     41: #define        CPU_NUMBER(reg)         \
                     42:        movzbl  APIC_LOCAL_VA+APIC_LOCAL_UNIT_ID+3,reg
                     43: 
                     44: #endif ASSEMBLER
                     45: 
                     46: 
                     47: #include "i386/cpu_number.h"
                     48: 
                     49: 
                     50: #endif _IMPS_CPU_NUMBER_

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.