pe_macro(1)
•
Else1ucTests
: ELSE1UC Instruction Test — The ELSE1UC instruction
complements the destination value, then ANDs the source with the
destination, placing the results both in the destination and in lflag.
This test uses the following bits as operands:
Flag Bits
PRegs
lsb
2[c4] — where c4 = 1024
lflag
3[c4]
cflag
4[c4]
vflag
5[c4]
zflag
6[c4]
nflag
7[c4]
tflag
8[c4]
fflag
9[c4]
rflag
10[c4]
65[c0]
11[c4]
12[c4]
The test starts by testing the ability to perform the ELSE1UC function
between the following sources and destinations:
SRC
Destination
Message Reference
Each flag bit
lsb
Message #1–#40
Each flag bit
lflag
Message #41–#80
Each flag bit
cflag
Message #81–#120
Each flag bit
vflag
Message #121–#160
Each flag bit
zflag
Message #161–#200
Each flag bit
nflag
Message #201–#240
Each flag bit
tflag
Message #241–#180
Each flag bit
fflag
Message #281–#320
Each flag bit
rflag
Message #321–#360
Each flag bit
64[c0]
Message #361–#400
If it detects an error in the result, it prints an error message giving the
instruction under test, the source and destination operands, the expected
result and the actual result.
After each ELSE1UC operation, it tests the lflag. If this is wrong, it prints an
error message giving the expected and actual value of the flag.
Next, initializing the destinations as shown, the test performs the ELSE1UC
function between the following source and destination operands.
Dest
Init.
SRC
Destination
Message Reference
1
1025[c2]
Each flag bit
Message #401–#422
B–20 Data Parallel Unit Reference Pages