I thought I could segregate the SRB code which had references to external module Meaning put the external =V CSRC.... calls And keep it in the same Class from the doc it seemed that XATTR would have external module in the same class I could then move the entire class to CSA
You seem to say it is not for this purpose I guess you know best Thanks > On Nov 23, 2020, at 6:57 AM, Jonathan Scott <jonathan_sc...@vnet.ibm.com> > wrote: > > Ref: Your note of Sun, 22 Nov 2020 17:03:38 -0500 > > Joe Reichman <reichman...@gmail.com> writes: >> I wrapped my SRB code around a CATTR since it going to be moved my question >> now is to reference the starting address is that a V con or A con > > I don't know why you would want to use CATTR for this purpose, > and I cannot think how it would be useful. CATTR is primarily > to support compatibility with special classes used by compilers > (for example metal C), for example to define a Writable Static > Area (which is only supported in an LE environment) or classes > containing diagnostic information. > > If you want to divide up an assembly into separate components > which may be split up by run-time logic, you can simply define > them as separate CSECTs or RSECTs. > > In general, if a reference is to a separate module, it either > needs a V-con or an A-con with an EXTRN. If it is a reference > to something within the same module (that is, the same assembly) > it can be an A-con without any EXTRN. > > If the SRB code is going to be moved by run-time logic in your > code, then obviously the starting address needs to be set > dynamically to the target location and any addresses within the > moved code which point within the original must be relocated. > > If you want some SRB code to be in common storage, then you > should either have it pre-loaded in LPA or you should use a > LOAD with GLOBAL=YES to load it there as a separate module > (noting the integrity limitations in that case). > > Jonathan Scott, HLASM > IBM Hursley, UK