insaxp.h

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 195 行 · 第 1/2 页

H
195
字号
/****************************************************************************
*
*                            Open Watcom Project
*
*    Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved.
*
*  ========================================================================
*
*    This file contains Original Code and/or Modifications of Original
*    Code as defined in and that are subject to the Sybase Open Watcom
*    Public License version 1.0 (the 'License'). You may not use this file
*    except in compliance with the License. BY USING THIS FILE YOU AGREE TO
*    ALL TERMS AND CONDITIONS OF THE LICENSE. A copy of the License is
*    provided with the Original Code and Modifications, and is also
*    available at www.sybase.com/developer/opensource.
*
*    The Original Code and all software distributed under the License are
*    distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
*    EXPRESS OR IMPLIED, AND SYBASE AND ALL CONTRIBUTORS HEREBY DISCLAIM
*    ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
*    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR
*    NON-INFRINGEMENT. Please see the License for the specific language
*    governing rights and limitations under the License.
*
*  ========================================================================
*
* Description:  Table of Alpha AXP opcodes and corresponding decode routines.
*
****************************************************************************/


#define o( p, c )       ((p##ul<<26)+(c##ul<<5))
/*
      Idx,              Name,           Opcode,         Mask,           Handler
*/
inspick( CALL_PAL,      "call_pal",     0x00000000,     0xfc000000,     AXPPal )
inspick( PAL19,         "pal19",        0x64000000,     0xfc000000,     AXPPal )
inspick( PAL1B,         "pal1b",        0x6c000000,     0xfc000000,     AXPPal )
inspick( PAL1D,         "pal1d",        0x74000000,     0xfc000000,     AXPPal )
inspick( PAL1E,         "pal1e",        0x78000000,     0xfc000000,     AXPPal )
inspick( PAL1F,         "pal1f",        0x7c000000,     0xfc000000,     AXPPal )
inspick( LDA,           "lda",          0x20000000,     0xFC000000,     AXPMemoryLA )
inspick( LDAH,          "ldah",         0x24000000,     0xFC000000,     AXPMemoryLA )
inspick( LDL,           "ldl",          0xa0000000,     0xFC000000,     AXPMemory )
inspick( LDL_L,         "ldl_l",        0xa8000000,     0xFC000000,     AXPMemory )
inspick( LDQ,           "ldq",          0xa4000000,     0xFC000000,     AXPMemory )
inspick( LDQ_L,         "ldq_l",        0xac000000,     0xFC000000,     AXPMemory )
inspick( LDQ_U,         "ldq_u",        0x2c000000,     0xFC000000,     AXPMemory )
inspick( LDS,           "lds",          0x88000000,     0xFC000000,     AXPFPMemory )
inspick( LDT,           "ldt",          0x8c000000,     0xFC000000,     AXPFPMemory )
inspick( STL,           "stl",          0xb0000000,     0xFC000000,     AXPMemory )
inspick( STL_C,         "stl_c",        0xb8000000,     0xFC000000,     AXPMemory )
inspick( STQ,           "stq",          0xb4000000,     0xFC000000,     AXPMemory )
inspick( STQ_C,         "stq_c",        0xbc000000,     0xFC000000,     AXPMemory )
inspick( STQ_U,         "stq_u",        0x3c000000,     0xFC000000,     AXPMemory )
inspick( STS,           "sts",          0x98000000,     0xFC000000,     AXPFPMemory )
inspick( STT,           "stt",          0x9c000000,     0xFC000000,     AXPFPMemory )
inspick( FETCH,         "fetch",        0x60008000,     0xFC00FFFF,     AXPMemoryFC )
inspick( FETCH_M,       "fetch_m",      0x6000a000,     0xFC00FFFF,     AXPMemoryFC )
inspick( MB,            "mb",           0x60004000,     0xFC00FFFF,     AXPMemoryFC )
inspick( RC,            "rc",           0x6000e000,     0xFC00FFFF,     AXPMemoryFC )
inspick( RPCC,          "rpcc",         0x6000c000,     0xFC00FFFF,     AXPMemoryFC )
inspick( RS,            "rs",           0x6000f000,     0xFC00FFFF,     AXPMemoryFC )
inspick( TRAPB,         "trapb",        0x60000000,     0xFC00FFFF,     AXPMemoryFC )
inspick( WMB,           "wmb",          0x60004400,     0xFC00FFFF,     AXPMemoryFC )
inspick( EXCB,          "excb",         0x60000400,     0xFC00FFFF,     AXPMemoryFC )
inspick( JMP,           "jmp",          0x68000000,     0xFC00C000,     AXPJump )
inspick( JSR,           "jsr",          0x68004000,     0xFC00C000,     AXPJump )
inspick( RET,           "ret",          0x68008000,     0xFC00C000,     AXPJump )
inspick( JSR_CORTN,     "jsr_coroutine",0x6800c000,     0xFC00C000,     AXPJump )
inspick( BR,            "br",           0xc0000000,     0xFC000000,     AXPBranch )
inspick( FBEQ,          "fbeq",         0xc4000000,     0xFC000000,     AXPFPBranch )
inspick( FBLT,          "fblt",         0xc8000000,     0xFC000000,     AXPFPBranch )
inspick( FBLE,          "fble",         0xcc000000,     0xFC000000,     AXPFPBranch )
inspick( BSR,           "bsr",          0xd0000000,     0xFC000000,     AXPBranch )
inspick( FBNE,          "fbne",         0xd4000000,     0xFC000000,     AXPFPBranch )
inspick( FBGE,          "fbge",         0xd8000000,     0xFC000000,     AXPFPBranch )
inspick( FBGT,          "fbgt",         0xdc000000,     0xFC000000,     AXPFPBranch )
inspick( BLBC,          "blbc",         0xe0000000,     0xFC000000,     AXPBranch )
inspick( BEQ,           "beq",          0xe4000000,     0xFC000000,     AXPBranch )
inspick( BLT,           "blt",          0xe8000000,     0xFC000000,     AXPBranch )
inspick( BLE,           "ble",          0xec000000,     0xFC000000,     AXPBranch )
inspick( BLBS,          "blbs",         0xf0000000,     0xFC000000,     AXPBranch )
inspick( BNE,           "bne",          0xf4000000,     0xFC000000,     AXPBranch )
inspick( BGE,           "bge",          0xf8000000,     0xFC000000,     AXPBranch )
inspick( BGT,           "bgt",          0xfc000000,     0xFC000000,     AXPBranch )
inspick( ADDL,          "addl",         o(0x10,0x00),   0xFC0007E0,     AXPOperateV )
inspick( ADDQ,          "addq",         o(0x10,0x20),   0xFC0007E0,     AXPOperateV )
inspick( CMPBGE,        "cmpbge",       o(0x10,0x0f),   0xFC000FE0,     AXPOperate )
inspick( CMPEQ,         "cmpeq",        o(0x10,0x2d),   0xFC000FE0,     AXPOperate )
inspick( CMPLE,         "cmple",        o(0x10,0x6d),   0xFC000FE0,     AXPOperate )
inspick( CMPLT,         "cmplt",        o(0x10,0x4d),   0xFC000FE0,     AXPOperate )
inspick( CMPULE,        "cmpule",       o(0x10,0x3d),   0xFC000FE0,     AXPOperate )
inspick( CMPULT,        "cmpult",       o(0x10,0x1d),   0xFC000FE0,     AXPOperate )
inspick( SUBL,          "subl",         o(0x10,0x09),   0xFC0007E0,     AXPOperateV )
inspick( SUBQ,          "subq",         o(0x10,0x29),   0xFC0007E0,     AXPOperateV )
inspick( S4ADDL,        "s4addl",       o(0x10,0x02),   0xFC000FE0,     AXPOperate )
inspick( S4ADDQ,        "s4addq",       o(0x10,0x22),   0xFC000FE0,     AXPOperate )

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?