On Mon, 4 Apr 2022 at 15:45, João Reginato <jb.regin...@gmail.com> wrote:
>
> Thank you all for the comments.
> What I'm trying to do is simply to map a dynamic data area (WKINFO) using a 
> static one (LKINFO).
>
> Any references to data after LKINFO will be in fact referencing the dynamic 
> area after WKINFO instead.

I'm still convinced that your USING operands are backwards.

You have
USING LKINFO,WKINFO
but would it make any sense to write
USING R2,WKINFO ? What you have done is to tell the assembelr how to
address symbols starting at LKINFO using the addressibility it already
has to WKINFO via R13. This is not fundamentally wrong, but I'm sure
it's not what you want to accomplish.

> I wonder why "USING area,map" accepts a data area as "map" but the DROP only 
> accepts a register.

You want "USING map,area". Same as you'd write USING CVT,R3 or the
like. Yes, you *can* use mappings that are not in a DSECT, but again,
I'm pretty sure it's not what you want to do.

Why can't you DROP with the name from the second operand of USING?
Because there's potential ambiguity - you can have multiple USINGs
covering the same area. Which one do you wnat to drop?

> And it worked fine until that point inside the PATCH_AREA where the base 
> register was suddenly changed from 8 to 13.
> I have many other similar samples working properly as I expected. But they 
> are less complexes and smaller too.
> The error is being caused because the corresponding DROP is missing and I 
> don't know how to drop it.

I don't think this is your problem.

Regardless, you can always use a labelled USING (which can also be
dependent or not) just so you can unambiguously DROP it.

> I think the simplest solution is using a register instead of a data area to 
> map it.

No - just fix your dependent USING.

> And also why LKINFO is being shown as a negative offset in 
> "LKINFO(X'FFFFE56C'),R13+X'2A94'" once it is defined inside the main CSECT 
> addressed by R8 and not in the DSECT addressed by R13.

Because you told the assembler it could address LKINFO using the
existing addressibility to WKINFO via R13.

> It should be R8+X'2A94'.
> And again why X'FFFFE56C' (the same as -X'1A94')?
>
> I don't know if I was clear enough.

If you would make your *entire* listing available, not skipping over
the parts you think are unimportant, and including all macro
expansions and no PRINT OFFs or NOGENs, I'm sure people will look
harder at it. Perhaps make it available on a website or something
rather than inline and wrapped.

Tony H.

Reply via email to