📄 hal_types.h
字号:
/* Copyright 2001,2002,2003 NAH6
* All Rights Reserved
*
* Parts Copyright DoD, Parts Copyright Starium
*
*/
/* -*-C-*-
*******************************************************************************
*
* File: hal_types.h
* RCS: $Id: hal_types.h,v 1.3 2003/11/22 16:34:28 itsme Exp $
* Description: machine specific type defs
* Author: Eric Blossom
* Created: Mon Jan 11 11:34:01 1999
* Modified: Sun Jul 11 19:06:13 1999 (eric) eb@starium.com
* Language: C
* Package: N/A
* Status: Experimental (Do Not Distribute)
*
* (C) Copyright 1999, Starium LLC, all rights reserved.
*
*******************************************************************************
*/
#ifndef _TX39_HAL_TYPES_H_
#define _TX39_HAL_TYPES_H_
typedef unsigned char uint8;
typedef unsigned short uint16;
typedef unsigned long uint32;
typedef signed char int8;
typedef signed short int16;
typedef signed long int32;
#ifdef _MSC_VER
typedef unsigned __int64 uint64;
typedef signed __int64 int64;
#define inline __inline
#else
typedef unsigned long long uint64;
typedef signed long long int64;
#endif
/*
* [Keep this structure and the corresponding defines in hal_asm_types.h in sync!]
*/
typedef struct {
unsigned r16; /* s0 */
unsigned r17; /* s1 */
unsigned r18; /* s2 */
unsigned r19; /* s3 */
unsigned r20; /* s4 */
unsigned r21; /* s5 */
unsigned r22; /* s6 */
unsigned r23; /* s7 */
unsigned r29; /* sp */
unsigned r30; /* s8/fp */
unsigned r31; /* ra */
unsigned c0_sr; /* status register */
} hal_control_context_t;
/*
* CPU Interrupt / Exception frame.
*
* As a performance tweak when handling interrupts the fields marked "NI" are
* not initialized (they are saved by the normal C calling conventions.)
* For other exceptions, the entire contents are valid.
*
* [Keep this structure and the corresponding defines in hal_asm_types.h in sync!]
*/
typedef struct {
unsigned r1;
unsigned r2;
unsigned r3;
unsigned r4;
unsigned r5;
unsigned r6;
unsigned r7;
unsigned r8;
unsigned r9;
unsigned r10;
unsigned r11;
unsigned r12;
unsigned r13;
unsigned r14;
unsigned r15;
unsigned r16; /* NI */
unsigned r17; /* NI */
unsigned r18; /* NI */
unsigned r19; /* NI */
unsigned r20; /* NI */
unsigned r21; /* NI */
unsigned r22; /* NI */
unsigned r23; /* NI */
unsigned r24;
unsigned r25;
unsigned r26; /* k0 placeholder */
unsigned r27; /* k1 placeholder */
unsigned r28;
unsigned r29; /* NI */
unsigned r30; /* NI */
unsigned r31;
unsigned hi;
unsigned lo;
unsigned c0_epc;
unsigned c0_cause;
unsigned c0_sr;
unsigned c0_cache;
unsigned spare; /* keep double word aligned */
} hal_interrupt_context_t;
#endif /* _TX39_HAL_TYPES_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -