1 2 /* BEGIN INCLUDE FILE ... cobol_perform_altgo.incl.pl1 */ 3 /* Last modified September 3, 1974 by AEG */ 4 5 /* Input structure for cobol_addr */ 6 7 declare 1 input_struc_basic aligned static, 8 2 type fixed bin aligned init(1), 9 2 operand_no fixed bin aligned init(0), 10 2 lock fixed bin aligned init(0), 11 2 segno fixed bin aligned, 12 2 char_offset fixed bin(24) aligned, 13 2 send_receive fixed bin aligned init(0); 14 15 /* 16 type indicates type of addressing requested. Type 1 17 indicates basic; i.e., data to be addressed is 18 specified by segno and char_offset. 19 20 operand_no not applicable to type 1. 21 22 lock indicates lock requirements for registers used in 23 addressing; 0 - do not lock registers used. 24 25 segno is the compiler designation of the segment in which 26 the data to be addressed is located. 27 28 char_offset is the character offset within segno of the data to 29 be addressed. 30 31 send_receive indicates whether the data being addressed is a 32 sending or receiving field for the instruction whose 33 address field is being set; 0 indicates sending. 34 */ 35 36 /* Input structure for mc_register$load */ 37 38 declare 1 register_request aligned static, 39 2 requested_reg fixed bin aligned init(1), 40 2 assigned_reg bit(4) aligned, 41 2 lock fixed bin aligned init(0), 42 2 reg_set_now fixed bin aligned, 43 2 use_code fixed bin aligned init(0), 44 2 adjust_ptr_addr fixed bin aligned init(0), 45 2 content_ptr ptr aligned init(null), 46 2 literal_content bit(36) aligned init((36)"0"b); 47 48 /* 49 requested_reg is a code designating the register requested; 50 1 designates the a register. 51 52 assigned_reg is a code designating the register assigned. It 53 has no significance if a specific register is 54 requested. 55 56 lock indicates locking requirements; 1 requests that 57 the register be locked. 58 59 reg_set_now not applicable for use_code = 0. 60 61 use_code specifies how the register is to be used by the 62 requester; 0 signifies that such information is 63 not meaningful for register optimization. 64 65 adjust_ptr_addr inserted to make evident that since all pointers 66 must be allocated on even word boundaries, the 67 pl1 compiler will allocate structures containing 68 pointers and all pointers therein on even word 69 boundaries leaving "gaps" where necessary. 70 71 content_ptr not applicable for use_code = 0. 72 73 literal_content not applicable for use_code = 0. 74 */ 75 76 /* End-of-perform range alterable go instruction pair */ 77 78 declare prfrm_altgo_inst_pr(4) bit(18) unaligned static init 79 ("000000000000000000"b, "010011101001000110"b, 80 "000000000000000000"b, "111001000000000101"b); 81 82 /* 83 The instructions are: 84 85 lda 0 86 tra 0,al 87 88 */ 89 90 /* END INCLUDE FILE ... cobol_perform_altgo.incl.pl1 */ 91