SPA 5.0:
{@{!}Pg}
PIXLD.MSCOUNT
Rd
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.COVMASK
Rd
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.COVERED
Rd{, Pd}{, [#ImmU08]}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.COVERED
Rd{, Pd}{, [Ra+#ImmS08]}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.OFFSET
Rd{, [#ImmU08]}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.OFFSET
Rd{, [Ra+#ImmS08]}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.CENTROID_OFFSET
Rd
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD.MY_INDEX
Rd{, Pd}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
{@{!}Pg}
PIXLD{.mode}
Rd{, Pd}{, [#ImmU08]}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
.mode: { .MSCOUNT, .COVMASK, .COVERED, .OFFSET, .CENTROID_OFFSET, .MY_INDEX, INVALID[2] } .MSCOUNT Query number of raster multisample locations (RasterMultiSampleCont). Note that in target independent rasterization, this can be different from render target multisample count. .COVMASK Returns a 32b boolean coverage mask, lsb aligned. Number of valid bits is RasterMultiSampleCount which depends on current raster multisample mode. support upto 16 bits coverage mask corresponding (upto 16xAA mode). .COVERED Address contains the sample index (if not specified, a zero is inserted). Returns a boolean TRUE/FALSE in Rd after checking if the specified sample index is covered. It can also write the result to predicate Pd. The sample index is valid from 0 to RasterMultiSampleCount-1, an out of bounds request will return not covered (FALSE). This is mostly a utility function since combining COVMASK with BFE and some predicate tests would achieve the same result. .OFFSET Address contains the sample index (if not specified, a zero is inserted). Returns the sample (dx,dy) offset. The samples are on a 16*16 pixel grid, and are returned as a pair of 16b signed integers in the range (-8,+7). dx starts at bit position 0, dy starts at bit position 16. Sample index is valid from 0 to RasterMultiSampleCount-1. IPA accepts the same offset format. Note: PIXLD.OFFSET is deprecated and supports only upto 8xMSAA with fixed sample positions. It does not support 16xAA and/or porgrammabale sample positions. .OFFSET functionality is expected to be replaced by LDC lookup. .CENTROID_OFFSET Returns the offset of the centroid. IPA accepts the same offset format. This is defined to be the center if the pixel is fully covered, or the first sample (See also "Additional Information" below). Feeding the output of this query to IPA.OFFSET will produce the same result as IPA.CENTROID. .MY_INDEX If in SSAA mode, returns the sample index for the current invocation of the shader and sets Pd to true. If not in SSAA mode, it will return 0 and set Pd to false.
{@{!}Pg}
PIXLD{.mode}
Rd{, Pd}{, [Ra+#ImmS08]}
{&req_6}
{&rdN}
{&wrN}
{?sched}
;
Pixel load. Allows input of pixel coverage mask and sample position (dx,dy).
An optional destination predicate can be specified for the .COVERED and .MY_INDEX modes. If not specified, it will default to P7 (the true predicate), which will suppress the write. No predicate write is ever performed for any PIXLD mode other than .COVERED and .MY_INDEX.
PIXLD.COVMASK R0;