|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: S T
Length: 21258 (0x530a)
Types: TextFile
Names: »SCG_LIST«
└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2
└─⟦77aa8350c⟧ »DATA«
└─⟦f794ecd1d⟧
└─⟦24d1ddd49⟧
└─⟦this⟧
; The use of this system is subject to the software license terms and
; conditions agreed upon between Rational and the Customer.
;
; Copyright 1988, 1989, 1990 by Rational.
;
; RESTRICTED RIGHTS LEGEND
;
; Use, duplication, or disclosure by the Government is subject to
; restrictions as set forth in subdivision (b)(3)(ii) of the Rights in
; Technical Data and Computer Software clause at 52.227-7013.
;
;
; Rational
; 3320 Scott Boulevard
; Santa Clara, California 95054-3197
;
; PROPRIETARY AND CONFIDENTIAL INFORMATION OF RATIONAL;
; USE OR COPYING WITHOUT EXPRESS WRITTEN AUTHORIZATION
; IS STRICTLY PROHIBITED. THIS MATERIAL IS PROTECTED AS
; AN UNPUBLISHED WORK UNDER THE U.S. COPYRIGHT ACT OF
; 1976. CREATED 1988, 1989, 1990. ALL RIGHTS RESERVED.
;
;
.case_sensitive
.module "CALL_ASM"
.sect ada_runtime_data,DATA,READONLY,RELOCATABLE,ALIGNMENT:=4
.sect ada_runtime_code,CODE,RELOCATABLE,ALIGNMENT:=2
;
; Entry points
;
.gbl.a __CALL_VALUE_SIZE
.gbl.a __CALL_INIT
.gbl.a __CALL_INIT_WITH_TASKS
.gbl.a __CALL_ALLOCATE
.gbl.a __CALL_ALLOCATE_WITH_TASKS
.gbl.a __CALL_DSCRMT_RECORD_ASSIGN
.gbl.a __CALL_DSCRMT_RECORD_SATISFIES
.sect ada_runtime_code
;---------------------------------------------------------------
; function CALL_VALUE_SIZE (Subp : Subprogram_Variable;
; Type_Desc : Type_Descriptor;
; Exp : Expression;
; Exp_kind : Expression_Kind) return Integer;
;
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.align 2
00000000 __CALL_VALUE_SIZE:
00000000 42A7 clr.l -(a7)
00000002 4E560000 link A6,#0 ; Build empty frame
00000006 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
0000000E 2F2E0018 move.l (24,a6),-(a7) ; Push Expression_Kind
00000012 2F2E0014 move.l (20,a6),-(a7) ; Push Expression
00000016 2F2E0010 move.l (16,a6),-(a7) ; Push Type Descriptor
0000001A 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
00000020 4E90 jsr.l (a0) ; Call subp
00000022 4E5E unlk A6 ; Remove frame
00000024 588F addq.l #4,A7
00000026 4E740010 rtd #16 ; Exit with parameter pop
;---------------------------------------
; procedure CALL_INIT (Subp : Subprogram_Variable;
; Type_Desc : Type_Descriptor;
; Dest_Address : System.Address);
;
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.local
$locals'size equ 0
.align 2
0000002A __CALL_INIT:
0000002A 42A7 clr.l -(a7) ; Dummy exception handler
0000002C 4E560000 link A6,#0 ; Build empty frame
00000030 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
00000038 2F2E0014 move.l (20,a6),-(a7) ; Push Dest_address
0000003C 2F2E0010 move.l (16,a6),-(a7) ; Push Type_Descriptor
00000040 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
00000046 4E90 jsr.l (a0) ; Call subp
00000048 4E5E unlk A6 ; Remove frame
0000004A 588F addq.l #4,A7 ; Pop exception handler
0000004C 4E74000C rtd #12 ; Exit with parameter pop
;---------------------------------------
; procedure CALL_INIT_WITH_TASKS (Subp : Subprogram_Variable;
; Type_Desc : Type_Descriptor;
; Dest_Address : System.Address;
; Master_Layer : System.Address;
; Activation_Group : System.Address);
;
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.local
$locals'size equ 0
.align 2
00000050 __CALL_INIT_WITH_TASKS:
00000050 42A7 clr.l -(a7) ; Dummy exception handler
00000052 4E560000 link A6,#0 ; Build empty frame
00000056 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
0000005E 2F2E001C move.l (28,a6),-(a7) ; Push Activation_Group
00000062 2F2E0018 move.l (24,a6),-(a7) ; Push Master_Layer
00000066 2F2E0014 move.l (20,a6),-(a7) ; Push Dest_Address
0000006A 2F2E0010 move.l (16,a6),-(a7) ; Push Type_Descriptor
0000006E 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
00000074 4E90 jsr.l (a0) ; Call subp
00000076 4E5E unlk A6 ; Remove frame
00000078 588F addq.l #4,A7 ; Pop exception handler
0000007A 4E740014 rtd #20 ; Exit with parameter pop
;---------------------------------------------------------------
; function CALL_ALLOCATE (Subp : Subprogram_Variable;
; Type_Desc : Type_Descriptor;
; Collection_Or_Heap: System.Address;
; Is_Collection : Boolean;
; Is_Homogeneous : Boolean)
; return System.Address;
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.align 2
0000007E __CALL_ALLOCATE:
0000007E 42A7 clr.l -(a7)
00000080 4E560000 link A6,#0 ; Build empty frame
00000084 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
0000008C 2F2E001C move.l (28,a6),-(a7) ; Push Is_Homogeneous flag
00000090 2F2E0018 move.l (24,a6),-(a7) ; Push Is_Collection flag
00000094 2F2E0014 move.l (20,a6),-(a7) ; Push Collection_Or_Heap
00000098 2F2E0010 move.l (16,a6),-(a7) ; Push Type_Descriptor
0000009C 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
000000A2 4E90 jsr.l (a0) ; Call subp
000000A4 4E5E unlk A6 ; Remove frame
000000A6 588F addq.l #4,A7
000000A8 4E740014 rtd #20 ; Exit and pop parameters
;---------------------------------------------------------------
; function CALL_ALLOCATE_WITH_TASKS
; (Subp : Subprogram_Variable;
; Type_Desc : Type_Descriptor;
; Collection_Or_Heap : System.Address;
; Is_Collection : Boolean;
; Is_Homogeneous : Boolean;
; Master_Layer : System.Address;
; Activation_Group : System.Address)
; return System.Address;
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.align 2
000000AC __CALL_ALLOCATE_WITH_TASKS:
000000AC 42A7 clr.l -(a7)
000000AE 4E560000 link A6,#0 ; Build empty frame
000000B2 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
000000BA 2F2E0024 move.l (36,a6),-(a7) ; Push Activation_Group
000000BE 2F2E0020 move.l (32,a6),-(a7) ; Push Master_Layer
000000C2 2F2E001C move.l (28,a6),-(a7) ; Push Is_Homogeneous flag
000000C6 2F2E0018 move.l (24,a6),-(a7) ; Push Is_Collection flag
000000CA 2F2E0014 move.l (20,a6),-(a7) ; Push Collection_Or_Heap
000000CE 2F2E0010 move.l (16,a6),-(a7) ; Push Type_Descriptor
000000D2 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
000000D8 4E90 jsr.l (a0) ; Call subp
000000DA 4E5E unlk A6 ; Remove frame
000000DC 588F addq.l #4,A7
000000DE 4E74001C rtd #28 ; Exit and pop parameters
;---------------------------------------------------------------
; procedure CALL_DSCRMT_RECORD_ASSIGN (Subp : Subprogram_variable;
; Type_Desc : Type_Descriptor;
; Source : Expression;
; Source_Kind : Expression_Kind;
; Dest : Expression;
; Dest_Kind : Expression_kind)
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.align 2
000000E2 __CALL_DSCRMT_RECORD_ASSIGN:
000000E2 42A7 clr.l -(a7)
000000E4 4E560000 link A6,#0 ; Build empty frame
000000E8 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
000000F0 2F2E0020 move.l (32,a6),-(a7) ; Push Dest_Kind
000000F4 2F2E001C move.l (28,a6),-(a7) ; Push Dest
000000F8 2F2E0018 move.l (24,a6),-(a7) ; Push Source_Kind
000000FC 2F2E0014 move.l (20,a6),-(a7) ; Push Source
00000100 2F2E0010 move.l (16,a6),-(a7) ; Push Type_Descriptor
00000104 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
0000010A 4E90 jsr.l (a0) ; Call subp with dest_address
0000010C 4E5E unlk A6 ; Remove frame
0000010E 588F addq.l #4,A7
00000110 4E740018 rtd #24 ; Exit and pop parameters
;---------------------------------------------------------------
; function CALL_DSCRMT_RECORD_SATISFIES
; (Subp : Subprogram_Variable;
; Type_Desc : Type_Descriptor;
; Exp : Expression;
; Exp_Kind : Expression_Kind)
; return Boolean;
;
; subprogram sp_rt,sp.internal,linkage.frame+2#00000001_00010000#
.align 2
00000114 __CALL_DSCRMT_RECORD_SATISFIES:
00000114 42A7 clr.l -(a7)
00000116 4E560000 link A6,#0 ; Build empty frame
0000011A 22760162000C0004 movea.l ([12,a6],4),a1 ; Pass static link thru A1
00000122 2F2E0018 move.l (24,a6),-(a7) ; Push Expression_Kind
00000126 2F2E0014 move.l (20,a6),-(a7) ; Push Exp
0000012A 2F2E0010 move.l (16,a6),-(a7) ; Push Type_Descriptor
0000012E 20760161000C movea.l ([12,a6]),a0 ; Load subprogram address
00000134 4E90 jsr.l (a0) ; Call subp
00000136 4E5E unlk A6 ; Remove frame
00000138 588F addq.l #4,A7
0000013A 4E740010 rtd #16 ; Exit and pop parameters
.end
Program Section Name Kind Length Patches Fixups
-------------------------------- ---- ---------- ------- -------
ADA_RUNTIME_CODE Rel 318 0 0
ADA_RUNTIME_DATA Rel 0 0 0
Standard include file: <none>
Object module version: 11
Assembled 220 lines in 3.073 elapsed, 2.778 CPU.
4296 lines per elapsed minute.
4752 lines per CPU minute.
13 disk waits for this job.
6591 bytes of heap used by this job.