vm370 icon indicating copy to clipboard operation
vm370 copied to clipboard

NUCEXT macro with SET, ORIGIN= and MF=(E,...) builds plist incorrectly, causing random storage overlays.

Open RossPatterson opened this issue 1 year ago • 1 comments

The NUCEXT macro, when coded with the the SET and MF=(E,...) options, can overlay random storage when the ORIGIN= option is coded with constant parameters (e.g., ORIGIN=(1234,...) or, more likely, ORIGIN=(...,0)). The ST instructions incorrectly include register 4 in computing the plist field address.

RossPatterson avatar Aug 19 '24 02:08 RossPatterson

The fix is pretty simple.

NUCEXT AUXLCL

RAP013DS ISSUE#106 PE HRC404DS NUCEXT SET ORIGIN= MF=(E,...) bad plist.

NUCEXT RAP013DS

./ R  02740000 02740000 $
         ST    15,28(,&REG)                                    RAP013DS
./ R  02770000 02770000 $
         ST    (&ORIGIN(1)),28(,&REG) Set Origin address       RAP013DS
./ R  02820000 02820000 $
         ST    15,32(,&REG)                                    RAP013DS
./ R  02850000 02850000 $
         ST    (&ORIGIN(2)),32(,&REG) Set Origin length        RAP013DS

RossPatterson avatar Aug 19 '24 03:08 RossPatterson

I've claimed update 405 for shipping this and several other NUCEXT and SUBCOM bugfixes.

RossPatterson avatar Dec 03 '24 15:12 RossPatterson

Fix has been uploaded to https://groups.io/g/h390-vm/files/hrc405ds.vmarc.

RossPatterson avatar Dec 22 '24 01:12 RossPatterson