Kinda long post. You might just wanna move along.

A load module PDS(E) directory contains various info for the modules it 
describes. One datum is the EPA for each member. Alias members have their own 
directory entries, which may have the same EPA as the main member or a 
different EPA. An EPA must be identifiable and locatable at binder time. It may 
or may not correspond to an alias name, but either way it's recorded in the 
directory and governs how the module will begin execution. 

War story. We once tried to provide emergency recovery for a sister shop whose 
upgrade had tanked horribly. They brought copies of their critical programs on 
tape. Forget why, but one of them needed to be relinked for our environment. No 
bueno. The original program had been assembled with END EP-name. That name was 
not defined with external reference otherwise. With no source to reassemble, we 
could not get it to link with just the load module alone. Problem may have been 
fixed in the intervening decades, but it was a show stopper at the time.  

.
.
J.O.Skip Robinson
Southern California Edison Company
Electric Dragon Team Paddler 
SHARE MVS Program Co-Manager
323-715-0595 Mobile
626-543-6132 Office ⇐=== NEW
[email protected]


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Tom Marchant
Sent: Friday, November 30, 2018 2:09 PM
To: [email protected]
Subject: (External):Re: Where is the EPA offset of a program in the Binder API 
data?

On Thu, 29 Nov 2018 17:01:34 +0000, Farley, Peter x23353 wrote:

>The PDS/E directory entry for a program contains, among other information, the 
>EPA offset within the program.
>
>The EPA offset is also contained in the SMDE/PMAR information returned by 
>DESERV.
>
>After much RTFM however, I cannot seem to find anywhere in the Binder API data 
>areas an indication of which section/label is the entry point for the program.
>
>In particular, I would have expected that an LD entry in the ESD table would 
>contain such an indicator, but I do not see one anywhere.
>
>Am I just not seeing the information in the API structures or is it just not 
>there?

I don't know the answer to your question.

Consider that a CSECT can contain many ENTRY statements.

A load module can contain many CSECTs, coming from many compile units.

The ENTRY specified when binding the load module can be a CSECT or an ENTRY 
specified at assembly time.

A load module can have many aliases, each referencing a different entry point.

A load module can be bound again and saved with a new name with a different 
entry point.


Given the above, I would be surprised if the entry point can be obtained from 
any other place than the directory entry.

--
Tom Marchant


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to