Hi Dave, Hi Frank,
I don't know that this port has a maintainer for CGEN/SID. However, I
think that testing against a specific test case which exhibits the bug
and running the SID testsuite for --target=xstormy16-elf should be
sufficient. I see that there is no test case for this insn in
sid/component/testsuite/sidcomp.cgen-cpu.xstormy16, so please add one
before running the test suite.
The attached patch does that. (It actually adds 4 new tests, one for
each variant of the pre-decrement/post-increment load/store version of
the MOVF instruction).
In the course of checking the patch I also found that all of the
XStormy16 tests were failing because the "pass" and "fail" macros had
not been updated to match the new parameter layout for the write
syscall. So the patch fixes this as well.
Then I found several testcases that were failing due to endian
mistakes, so those have been fixed as well.
Tested with an xstormy16-elf toolchain and no regressions.
OK to apply (along with the original MOVF patch) ?
Cheers
Nick
2010-11-02 Nick Clifton <nickc@redhat.com>
* testutils.inc (pass): Update parameter layout for write syscall.
(fail): Likewise.
* movgrgrii.cgs: Fix endianness typo in assertion.
* movgrgriipostinc.cgs: Likewise.
* movgrgriipredec.cgs: Likewise.
* movgrgripostinc.cgs: Likewise.
* movgrgripredec.cgs: Likewise.
* movgrigr.cgs: Likewise.
* movgriipostincgr.cgs: Likewise.
* movgripostincgr.cgs: Likewise.
* movgripredecgr.cgs: Likewise.
* rrcgrgr.cgs: Rotate only inserts carry flag once.
* rrcgrimm4.cgs: Likewise.
* movfgrgriipostinc.cgs: New test. Checks MOVF load with
post increment.
* movfgrgriipredec.cgs: New test. Checks MOVF load with
pre decrement.
* movfgriipostincgr.cgs: New test. Checks MOVF store with
post increment.
* movfgriipostincgr.cgs: New test. Checks MOVF store with
pre decrement.