COPY A TO B WITH COPY SUBROUTINE USING MACROS
LOC OBJECT CODE ADDR1 ADDR2 STMT SOURCE STATEMENT
2 MACRO
3 COPY &ARRAY1,&ARRAY2,&LENGTH
4 GBLB &CCBDEF
5 LA 1,&ARRAY1
6 ST 1,CCB
7 LA 1,&ARRAY2
8 ST 1,CCB+4
9 L 1,&LENGTH
10 ST 1,CCB+8
11 LA 1,CCB
12 BAL 5,COPY
13 AIF (&CCBDEF).SEQ01
14 B CCBA BRANCH AROUND THE COPY CONTROL BLOCK
15 DS 0F
16 CCB DS 3F
17 CCBA EQU *
18 .SEQ01 ANOP
19 &CCBDEF SETB 1
20 MEND
21 *
22 *
000000 23 P1 START
000000 05C0 24 BALR 12,0
00002 25 USING *,12
26 COPY A,B,=A(ALEN)
000002 4110 C082 00084 27+ LA 1,A
000006 5010 C026 00028 28+ ST 1,CCB
00000A 4110 C096 00098 29+ LA 1,B
00000E 5010 C02A 0002C 30+ ST 1,CCB+4
000012 5810 C0FE 00100 31+ L 1,=A(ALEN)
000016 5010 C02E 00030 32+ ST 1,CCB+8
00001A 4110 C026 00028 33+ LA 1,CCB
00001E 4550 C054 00056 34+ BAL 5,COPY
000022 47F0 C032 00034 35+ B CCBA BRANCH AROUND THE COPY CONTROL BLOCK
000028 36+ DS 0F
000028 37+CCB DS 3F
00034 38+CCBA EQU *
39 COPY C,D,=A(CLEN)
000034 4110 C0BE 000C0 40+ LA 1,C
000038 5010 C026 00028 41+ ST 1,CCB
00003C 4110 C0D6 000D8 42+ LA 1,D
000040 5010 C02A 0002C 43+ ST 1,CCB+4
000044 5810 C102 00104 44+ L 1,=A(CLEN)
000048 5010 C02E 00030 45+ ST 1,CCB+8
00004C 4110 C026 00028 46+ LA 1,CCB
000050 4550 C054 00056 47+ BAL 5,COPY
i000054 07FE 48 BR 14
COPY A TO B WITH COPY SUBROUTINE USING MACROS
LOC OBJECT CODE ADDR1 ADDR2 STMT SOURCE STATEMENT
00056 50 COPY EQU *
51 * CCB CONTAINS FIRST ADDR, SECOND ADDR, NO. OF FULLWORDS
52 * +0 +4 +8
53 * R1 = CCB ON ENTRY
000056 5820 1000 00000 54 L 2,0(0,1) R2=FIRST ADDR
00005A 5830 1004 00004 55 L 3,4(0,1) R3=SECOND ADDR
00005E 5840 1008 00008 56 L 4,8(0,1) R4=# OF EACH
000062 1B99 57 SR 9,9
00064 58 COPY1 EQU *
000064 1994 59 CR 9,4
000066 4780 C080 00082 60 BE COPY2
00006A 5860 2000 00000 61 L 6,0(0,2)
00006E 5060 3000 00000 62 ST 6,0(0,3)
000072 5A20 C106 00108 63 A 2,=F'4'
000076 5A30 C106 00108 64 A 3,=F'4'
00007A 5A90 C10A 0010C 65 A 9,=F'1'
00007E 47F0 C062 00064 66 B COPY1
00082 67 COPY2 EQU *
000082 07F5 68 BR 5 COPY ENDS
69 *
000084 0000000100000002 70 A DC F'1',F'2',F'3',F'4'
00004 71 ALEN EQU (*-A)/4
000094 FFFFFFFF 72 DC F'-1'
000098 73 B DS 10F
0000C0 0000000100000002 74 C DC F'1',F'2',F'3',F'4',F'5'
00005 75 CLEN EQU (*-C)/4
0000D4 FFFFFFFF 76 DC F'-1'
0000D8 77 D DS 10F
78 END
000100 00000004 79 =A(ALEN)
000104 00000005 80 =A(CLEN)
000108 00000004 81 =F'4'
00010C 00000001 82 =F'1'