Explain the difference between binaryinstruction and binaryaccinstruction

Developers may add new instructions in wrong place in the future
if they don't know the difference between binaryinstruction and
binaryaccinstruction.
This commit is contained in:
Homer Hsing 2012-09-18 13:25:53 +08:00 committed by Damien Lespiau
parent 375d1fd7b2
commit 74383f4db4

View File

@ -367,6 +367,8 @@ instrseq: instrseq pragma
;
/* 1.4.1: Instruction groups */
// binaryinstruction: Source operands cannot be accumulators
// binaryaccinstruction: Source operands can be accumulators
instruction: unaryinstruction
| binaryinstruction
| binaryaccinstruction
@ -417,6 +419,7 @@ unaryop: MOV | FRC | RNDU | RNDD | RNDE | RNDZ | NOT | LZD | BFREV | CBIT
| F16TO32 | F32TO16 | FBH | FBL
;
// Source operands cannot be accumulators
binaryinstruction:
predicate binaryop conditionalmodifier saturate execsize
dst src srcimm instoptions
@ -454,6 +457,7 @@ binaryinstruction:
binaryop: MUL | MAC | MACH | LINE | SAD2 | SADA2 | DP4 | DPH | DP3 | DP2 | SUBB
;
// Source operands can be accumulators
binaryaccinstruction:
predicate binaryaccop conditionalmodifier saturate execsize
dst srcacc srcimm instoptions