📄 pcc_prefix.s
字号:
;; (c) Copyright 1986 HEWLETT-PACKARD COMPANY;; To anyone who acknowledges that this file is provided "AS IS"; without any express or implied warranty:; permission to use, copy, modify, and distribute this file; for any purpose is hereby granted without fee, provided that; the above copyright notice and this notice appears in all; copies, and that the name of Hewlett-Packard Company not be; used in advertising or publicity pertaining to distribution; of the software without specific, written prior permission.; Hewlett-Packard Company makes no representations about the; suitability of this software for any purpose.;; Standard Hardware Register Definitions for Use with Assembler; version A.08.06; - fr16-31 added at Utah;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; Hardware General Registersr0: .equ 0r1: .equ 1r2: .equ 2r3: .equ 3r4: .equ 4r5: .equ 5r6: .equ 6r7: .equ 7r8: .equ 8r9: .equ 9r10: .equ 10r11: .equ 11r12: .equ 12r13: .equ 13r14: .equ 14r15: .equ 15r16: .equ 16r17: .equ 17r18: .equ 18r19: .equ 19r20: .equ 20r21: .equ 21r22: .equ 22r23: .equ 23r24: .equ 24r25: .equ 25r26: .equ 26r27: .equ 27r28: .equ 28r29: .equ 29r30: .equ 30r31: .equ 31; Hardware Space Registerssr0: .equ 0sr1: .equ 1sr2: .equ 2sr3: .equ 3sr4: .equ 4sr5: .equ 5sr6: .equ 6sr7: .equ 7; Hardware Floating Point Registersfr0: .equ 0fr1: .equ 1fr2: .equ 2fr3: .equ 3fr4: .equ 4fr5: .equ 5fr6: .equ 6fr7: .equ 7fr8: .equ 8fr9: .equ 9fr10: .equ 10fr11: .equ 11fr12: .equ 12fr13: .equ 13fr14: .equ 14fr15: .equ 15fr16: .equ 16fr17: .equ 17fr18: .equ 18fr19: .equ 19fr20: .equ 20fr21: .equ 21fr22: .equ 22fr23: .equ 23fr24: .equ 24fr25: .equ 25fr26: .equ 26fr27: .equ 27fr28: .equ 28fr29: .equ 29fr30: .equ 30fr31: .equ 31; Hardware Control Registerscr0: .equ 0rctr: .equ 0 ; Recovery Counter Registercr8: .equ 8 ; Protection ID 1pidr1: .equ 8cr9: .equ 9 ; Protection ID 2pidr2: .equ 9cr10: .equ 10ccr: .equ 10 ; Coprocessor Confiquration Registercr11: .equ 11sar: .equ 11 ; Shift Amount Registercr12: .equ 12pidr3: .equ 12 ; Protection ID 3cr13: .equ 13pidr4: .equ 13 ; Protection ID 4cr14: .equ 14iva: .equ 14 ; Interrupt Vector Addresscr15: .equ 15eiem: .equ 15 ; External Interrupt Enable Maskcr16: .equ 16itmr: .equ 16 ; Interval Timercr17: .equ 17pcsq: .equ 17 ; Program Counter Space queuecr18: .equ 18pcoq: .equ 18 ; Program Counter Offset queuecr19: .equ 19iir: .equ 19 ; Interruption Instruction Registercr20: .equ 20isr: .equ 20 ; Interruption Space Registercr21: .equ 21ior: .equ 21 ; Interruption Offset Registercr22: .equ 22ipsw: .equ 22 ; Interrpution Processor Status Wordcr23: .equ 23eirr: .equ 23 ; External Interrupt Requestcr24: .equ 24ppda: .equ 24 ; Physcial Page Directory Addresstr0: .equ 24 ; Temporary register 0cr25: .equ 25hta: .equ 25 ; Hash Table Addresstr1: .equ 25 ; Temporary register 1cr26: .equ 26tr2: .equ 26 ; Temporary register 2cr27: .equ 27tr3: .equ 27 ; Temporary register 3cr28: .equ 28tr4: .equ 28 ; Temporary register 4cr29: .equ 29tr5: .equ 29 ; Temporary register 5cr30: .equ 30tr6: .equ 30 ; Temporary register 6cr31: .equ 31tr7: .equ 31 ; Temporary register 7;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; Procedure Call Convention ~; Register Definitions for Use with Assembler ~; version A.08.06;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; Software Architecture General Registersrp: .equ r2 ; return pointermrp: .equ r31 ; millicode return pointerret0: .equ r28 ; return valueret1: .equ r29 ; return value (high part of double)sl: .equ r29 ; static linksp: .equ r30 ; stack pointerdp: .equ r27 ; data pointerarg0: .equ r26 ; argumentarg1: .equ r25 ; argument or high part of double argumentarg2: .equ r24 ; argumentarg3: .equ r23 ; argument or high part of double argument;_____________________________________________________________________________; Software Architecture Space Registers; sr0 ; return link form BLEsret: .equ sr1 ; return valuesarg: .equ sr1 ; argument; sr4 ; PC SPACE tracker; sr5 ; process private data;_____________________________________________________________________________; Software Architecture Pseudo Registersprevious_sp: .equ 64 ; old stack pointer (locates previous frame)#if 0;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; Standard space and subspace definitions. version A.08.06; These are generally suitable for programs on HP_UX and HPE.; Statements commented out are used when building such things as operating; system kernels.;;;;;;;;;;;;;;;; .SPACE $TEXT$, SPNUM=0,SORT=8; .subspa $FIRST$, QUAD=0,ALIGN=2048,ACCESS=0x2c,SORT=4,FIRST; .subspa $REAL$, QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=4,FIRST,LOCK .subspa $MILLICODE$, QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=8 .subspa $LIT$, QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=16 .subspa $CODE$, QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=24; .subspa $UNWIND$, QUAD=0,ALIGN=4,ACCESS=0x2c,SORT=64; .subspa $RECOVER$, QUAD=0,ALIGN=4,ACCESS=0x2c,SORT=80; .subspa $RESERVED$, QUAD=0,ALIGN=8,ACCESS=0x73,SORT=82; .subspa $GATE$, QUAD=0,ALIGN=8,ACCESS=0x4c,SORT=84,CODE_ONLY; Additional code subspaces should have ALIGN=8 for an interspace BV; and should have SORT=24.; ; For an incomplete executable (program bound to shared libraries), ; sort keys $GLOBAL$ -1 and $GLOBAL$ -2 are reserved for the $DLT$ ; and $PLT$ subspaces respectively. ;;;;;;;;;;;;;;; .SPACE $PRIVATE$, SPNUM=1,PRIVATE,SORT=16 .subspa $GLOBAL$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=40 .import $global$ .subspa $SHORTDATA$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=24 .subspa $DATA$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=16 .subspa $PFA_COUNTER$, QUAD=1,ALIGN=4,ACCESS=0x1f,SORT=8 .subspa $SHORTBSS$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=80,ZERO .subspa $BSS$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=82,ZERO; .subspa $PCB$, QUAD=1,ALIGN=8,ACCESS=0x10,SORT=82; .subspa $STACK$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=82; .subspa $HEAP$, QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=82;;;;;;;;;;;;;;;;; .SPACE $PFA$, SPNUM=0,PRIVATE,UNLOADABLE,SORT=64; .subspa $PFA_ADDRESS$, ALIGN=4,ACCESS=0x2c,UNLOADABLE;;;;;;;;;;;;;;;;; .SPACE $DEBUG$, SPNUM=2,PRIVATE,UNLOADABLE,SORT=80; .subspa $HEADER$, ALIGN=4,ACCESS=0,UNLOADABLE,FIRST; .subspa $GNTT$, ALIGN=4,ACCESS=0,UNLOADABLE; .subspa $LNTT$, ALIGN=4,ACCESS=0,UNLOADABLE; .subspa $SLT$, ALIGN=4,ACCESS=0,UNLOADABLE; .subspa $VT$, ALIGN=4,ACCESS=0,UNLOADABLE; To satisfy the copyright terms each .o will have a reference; the the actual copyright. This will force the actual copyright; message to be brought in from libgloss/hp-milli.s .space $PRIVATE$ .subspa $DATA$#else .data#endif .import ___hp_free_copyright,dataL$copyright .word ___hp_free_copyright
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -