Browse Prior Art Database

Branch and Link Trace Service Tool for Software

IP.com Disclosure Number: IPCOM000043084D
Original Publication Date: 1984-Jul-01
Included in the Prior Art Database: 2005-Feb-04
Document File: 1 page(s) / 12K

Publishing Venue

IBM

Related People

Sazbon Natansohn, D: AUTHOR

Abstract

Tracing the branches in programs implies an important performance degradation due to the fact that the hardware needs to log additional information (addresses levels of execution) and to manage control information (table size and table limits) while the program is running. To avoid the considerable amount of hardware devoted to the service functions a Branch and Link Trace (BALT) is implemented so that the environment and timings are less disturbed when the service aids are activated. Branch and Link Trace is a service aid for software that allows any BAL (Branch and Link) or BALR (Branch and Link Register) instructions in a program to be traced indiscriminately. The user can specify upper and lower limits where the BAL and BALR instructions are to be traced, as well as the executing levels to be traced.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 85% of the total text.

Page 1 of 1

Branch and Link Trace Service Tool for Software

Tracing the branches in programs implies an important performance degradation due to the fact that the hardware needs to log additional information (addresses levels of execution) and to manage control information (table size and table limits) while the program is running. To avoid the considerable amount of hardware devoted to the service functions a Branch and Link Trace (BALT) is implemented so that the environment and timings are less disturbed when the service aids are activated. Branch and Link Trace is a service aid for software that allows any BAL (Branch and Link) or BALR (Branch and Link Register) instructions in a program to be traced indiscriminately. The user can specify upper and lower limits where the BAL and BALR instructions are to be traced, as well as the executing levels to be traced. The occurrence of a BAL or BALR instruction in a program represents a call to a sub-routine while some information is generally passed through internal registers. A feature of the BALT service is to enable the user to specify two internal registers (R1 Through R7) to be traced at the instant of the BAL or BALR instruction. Each BALT output record will contain the following information. come-from level 1st Halfword

come-from addr. byte X

come-from addr. byte 0 2nd Halfword

come-from addr. byte 1

go-to level 3rd Halfword

go-to addr. byte X

go-to addr. byte 0 4th Halfword

go-to addr. byte 1

x'00' 5th Halfword

1st Reg....