From bebe8179e1b97ac8111756de1cf27f54eebee150 Mon Sep 17 00:00:00 2001 From: Homer Hsing Date: Tue, 18 Sep 2012 13:47:22 +0800 Subject: [PATCH] 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. --- assembler/src/gram.y | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/assembler/src/gram.y b/assembler/src/gram.y index 58940cb..645e5d4 100644 --- a/assembler/src/gram.y +++ b/assembler/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 -- 2.7.4