On 09/10/10 08:29, Walt Farrell wrote:
>
> How about this interpretation? The offset is 4092 from the value in R1,
> since R1 addresses from -4096 to -1, and -4 - (-4096) is 4092. 4092 = FFC.
>
Another HLASM test case:
Active Usings: None
Loc Object Code Addr1 Addr2 Stmt Source Statement
000000 00000 0000C 1 NEGDISP CSECT
2 *
000000 0000 0000 00000 3 LA R3,-4(,R2)
** ASMA028E Invalid displacement
** ASMA435I Record 3 in SPPG.NEGDISP.JOB07274.D0000101.? on volume:
4 *
R:1 FFF000 5 USING -4096,R1
000004 4132 1FFC FFFFFC 6 LA R3,-4(R2)
7 *
000008 4130 2FFC FFFFFC 8 LA R3,-4(,R2)
9 *
10 YREGS
HLASM reports ASMA028E at line 3, but no error on the
identical statement at line 8. All the experiments I can
think of indicate that the USING is the differentiator.
But this is silly. With an explicit base register specified,
HLASM shouldn't even attempt implicit address resolution.
This feels ever more like a bug.
-- gil