summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHomer Hsing <homer.xing@intel.com>2012-09-18 13:47:22 +0800
committerXiang, Haihao <haihao.xiang@intel.com>2012-09-26 23:27:00 -0400
commit2cf920f234608f951198b9bec0281de4068bcebe (patch)
tree51394830536ff2feb63e11827bc278e484ee4585
parent8c59c185c22ec52a27de4324882a286df116d8d1 (diff)
According to BSPEC, put PLN & BFI1 to binaryop, put SUBB to binaryaccop
bspec: BFI1 should not access accumulator. PLN should not use accumulator as source. future work in gram.y: show warning if acc is used as dest for ADDC/SUBB/CMP/CMPN/SHL/BFI1.
-rw-r--r--src/gram.y7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gram.y b/src/gram.y
index 58940cb..645e5d4 100644
--- a/src/gram.y
+++ b/src/gram.y
@@ -454,7 +454,8 @@ binaryinstruction:
}
;
-binaryop: MUL | MAC | MACH | LINE | SAD2 | SADA2 | DP4 | DPH | DP3 | DP2 | SUBB
+/* bspec: BFI1 should not access accumulator. */
+binaryop: MUL | MAC | MACH | LINE | SAD2 | SADA2 | DP4 | DPH | DP3 | DP2 | PLN | BFI1
;
// Source operands can be accumulators
@@ -492,8 +493,8 @@ binaryaccinstruction:
}
;
-binaryaccop: AVG | ADD | SEL | AND | OR | XOR | SHR | SHL | ASR | CMP | CMPN | PLN
- | ADDC | BFI1
+/* TODO: bspec says ADDC/SUBB/CMP/CMPN/SHL/BFI1 cannot use accumulator as dest. */
+binaryaccop: AVG | ADD | SEL | AND | OR | XOR | SHR | SHL | ASR | CMP | CMPN | ADDC | SUBB
;
trinaryop: MAD | LRP | BFE | BFI2