- Apr 22, 2022
-
-
Maxim Blinov authored
branch. Because the rebase process required re-writing some of the commit history (due to some code being moved around upstream), this doesn't merge cleanly, and some manual merge resolution was neccesary.
-
Jessica Mills authored
- Fix for bug relating to incorrect encoding of ALU sign and zero extend operations. - Fix for bug relating to incorrect HWLP branch offset upper boundaries. - Fix general white space and number formatting inconsistencies. gas/ChangeLog.COREV: * config/tc-riscv.c (riscv_ip): Fix boundary bug for hardware loop branch operands - upper boundary of long branch offset changed from 4094 to 8191 and short offset from 30 to 63. gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-alu-extbs.d: Fix test after encoding change. * gas/riscv/cv-alu-extbs.s: Likewise. * gas/riscv/cv-alu-extbz.d: Likewise. * gas/riscv/cv-alu-exths.d: Likewise. * gas/riscv/cv-alu-exthz.d: Likewise. * gas/riscv/cv-alu-march-rv32i-xcorev.d: Amend test with branch offset boundary change. * gas/riscv/cv-hwlp-endi.d: Likewise. * gas/riscv/cv-hwlp-endi.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-01.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-01.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-02.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-02.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-03.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-03.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-04.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-04.s: Likewise. * gas/riscv/cv-hwlp-setup.d: Likewise. * gas/riscv/cv-hwlp-setup.s: Likewise. * gas/riscv/cv-hwlp-starti.d: Likewise. * gas/riscv/cv-hwlp-starti.s: Likewise. include/ChangeLog.COREV: * opcode/riscv-opc.h: Fix hexadecimal number format inconsistencies for matches and masks. ld/testsuite/ChangeLog.COREV: * ld-riscv-elf/ld-riscv-elf.exp: Renamed CORE-V hwlp tests to match -march option for the instruction set. * ld-riscv-elf/cv-hwloop-starti.s: Renamed to cv-hwlp-starti.s. * ld-riscv-elf/cv-hwloop-starti.d: Renamed to cv-hwlp-starti.d. * ld-riscv-elf/cv-hwloop-endi.d: Renamed to cv-hwlp-endi.d. * ld-riscv-elf/cv-hwloop-endi.s: Renamed to cv-hwlp-endi.s. * ld-riscv-elf/cv-hwloop-setup.d: Renamed to cv-hwlp-setup.d. * ld-riscv-elf/cv-hwloop-setup.s: Renamed to cv-hwlp-setup.s. * ld-riscv-elf/cv-hwloop-setupi.d: Renamed to cv-hwlp-setupi.d. * ld-riscv-elf/cv-hwloop-setupi.s: Renamed to cv-hwlp-setupi.s. opcodes/ChangeLog.COREV: * riscv-opc.c (MATCH_CV_EXTHS, MATCH_CV_EXTHZ, MATCH_CV_EXTBS) (MATCH_CV_EXTBZ): Add new match. (riscv_opcodes): Fix indentation inconsistencies.
-
Nazareno Bruschi authored
Signed-off-by:Nazareno Bruschi <nazareno.bruschi@embecosm.com>
-
Enrico Tabanelli authored
Signed-off-by:Enrico Tabanelli <enrico.tabanelli@embecosm.com>
-
Jessica Mills authored
gas/ChangeLog.COREV: * config/tc-riscv.c (md_apply_fix): Remove unnecessary overflow check for BFD_RELOC_RISCV_CVPCREL_UI12 & BFD_RELOC_RISCV_CVPCREL_URS1. gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-hwlp-fail-operand-07.l: Remove obsolete BFD_RELOC_RISCV_CVPCREL_UI12 overflow error message. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
Files changed: * bfd/ChangeLog.COREV: Correct in line with GNU standards. * gas/ChangeLog.COREV: Likewise. * include/ChangeLog.COREV: Likewise. * opcodes/ChangeLog.COREV: Likewise. * ld/ChangeLog.COREV: Removed. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-mac-fail-march.d: Added new test. * gas/riscv/cv-mac-fail-march.l: Likewise. * gas/riscv/cv-mac-fail-march.s: Likewise. * gas/riscv/cv-mac-fail-operand-01.d: Likewise. * gas/riscv/cv-mac-fail-operand-01.l: Likewise. * gas/riscv/cv-mac-fail-operand-01.s: Likewise. * gas/riscv/cv-mac-fail-operand-02.d: Likewise. * gas/riscv/cv-mac-fail-operand-02.l: Likewise. * gas/riscv/cv-mac-fail-operand-02.s: Likewise. * gas/riscv/cv-mac-fail-operand-03.d: Likewise. * gas/riscv/cv-mac-fail-operand-03.l: Likewise. * gas/riscv/cv-mac-fail-operand-03.s: Likewise. * gas/riscv/cv-mac-fail-operand-04.d: Likewise. * gas/riscv/cv-mac-fail-operand-04.l: Likewise. * gas/riscv/cv-mac-fail-operand-04.s: Likewise. * gas/riscv/cv-mac-fail-operand-05.d: Likewise. * gas/riscv/cv-mac-fail-operand-05.l: Likewise. * gas/riscv/cv-mac-fail-operand-05.s: Likewise. * gas/riscv/cv-mac-01.d: Deleted, content subsumed into cv-mac-fail-operand-01.d. * gas/riscv/cv-mac-01.l: Deleted, content subsumed into cv-mac-fail-operand-01.l. * gas/riscv/cv-mac-01.s: Deleted, content subsumed into cv-mac-fail-operand-01.s. * gas/riscv/cv-mac-02.d: Deleted, content subsumed into cv-mac-fail-operand-02.d. * gas/riscv/cv-mac-02.l: Deleted, content subsumed into cv-mac-fail-operand-02.l. * gas/riscv/cv-mac-02.s: Deleted, content subsumed into cv-mac-fail-operand-02.s. * gas/riscv/cv-mac-03.d: Deleted, content subsumed into cv-mac-fail-operand-03.d. * gas/riscv/cv-mac-03.l: Deleted, content subsumed into cv-mac-fail-operand-03.l. * gas/riscv/cv-mac-03.s: Deleted, content subsumed into cv-mac-fail-operand-03.s. * gas/riscv/cv-mac-04.d: Deleted, content subsumed into cv-mac-fail-operand-04.d. * gas/riscv/cv-mac-04.l: Deleted, content subsumed into cv-mac-fail-operand-04.l. * gas/riscv/cv-mac-04.s: Deleted, content subsumed into cv-mac-fail-operand-04.s. * gas/riscv/cv-mac-05.d: Deleted, content subsumed into cv-mac-fail-operand-04.d. * gas/riscv/cv-mac-05.l: Deleted, content subsumed into cv-mac-fail-operand-04.l. * gas/riscv/cv-mac-05.s: Deleted, content subsumed into cv-mac-fail-operand-04.s. * gas/riscv/cv-mac-06.d: Deleted, content subsumed into cv-mac-fail-operand-05.d. * gas/riscv/cv-mac-06.l: Deleted, content subsumed into cv-mac-fail-operand-05.l. * gas/riscv/cv-mac-06.s: Deleted, content subsumed into cv-mac-fail-operand-05.s. * gas/riscv/cv-mac-07.d: Deleted, content subsumed into cv-mac-fail-operand-04.d. * gas/riscv/cv-mac-07.l: Deleted, content subsumed into cv-mac-fail-operand-04.l. * gas/riscv/cv-mac-07.s: Deleted, content subsumed into cv-mac-fail-operand-04.s. * gas/riscv/cv-mac-08.d: Deleted, content subsumed into cv-mac-fail-operand-04.d. * gas/riscv/cv-mac-08.l: Deleted, content subsumed into cv-mac-fail-operand-04.l. * gas/riscv/cv-mac-08.s: Deleted, content subsumed into cv-mac-fail-operand-04.s. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-alu-fail-march.d: Added new test. * gas/riscv/cv-alu-fail-march.l: Likewise. * gas/riscv/cv-alu-fail-march.s: Likewise. * gas/riscv/cv-alu-fail-operand-01.d: Likewise. * gas/riscv/cv-alu-fail-operand-01.l: Likewise. * gas/riscv/cv-alu-fail-operand-01.s: Likewise. * gas/riscv/cv-alu-fail-operand-02.d: Likewise. * gas/riscv/cv-alu-fail-operand-02.l: Likewise. * gas/riscv/cv-alu-fail-operand-02.s: Likewise. * gas/riscv/cv-alu-fail-operand-03.d: Likewise. * gas/riscv/cv-alu-fail-operand-03.l: Likewise. * gas/riscv/cv-alu-fail-operand-03.s: Likewise. * gas/riscv/cv-alu-fail-operand-04.d: Likewise. * gas/riscv/cv-alu-fail-operand-04.l: Likewise. * gas/riscv/cv-alu-fail-operand-04.s: Likewise. * gas/riscv/cv-alu-fail-operand-05.d: Likewise. * gas/riscv/cv-alu-fail-operand-05.l: Likewise. * gas/riscv/cv-alu-fail-operand-05.s: Likewise. * gas/riscv/cv-alu-fail-operand-06.d: Likewise. * gas/riscv/cv-alu-fail-operand-06.l: Likewise. * gas/riscv/cv-alu-fail-operand-06.s: Likewise. * gas/riscv/cv-alu-fail-operand-07.d: Likewise. * gas/riscv/cv-alu-fail-operand-07.l: Likewise. * gas/riscv/cv-alu-fail-operand-07.s: Likewise. * gas/riscv/cv-alu-01.d: Deleted, content subsumed into cv-alu-fail-operand-01.d. * gas/riscv/cv-alu-01.l: Deleted, content subsumed into cv-alu-fail-operand-01.l. * gas/riscv/cv-alu-01.s: Deleted, content subsumed into cv-alu-fail-operand-01.s. * gas/riscv/cv-alu-02.d: Deleted, content subsumed into cv-alu-fail-operand-02.d. * gas/riscv/cv-alu-02.l: Deleted, content subsumed into cv-alu-fail-operand-02.l. * gas/riscv/cv-alu-02.s: Deleted, content subsumed into cv-alu-fail-operand-02.s. * gas/riscv/cv-alu-03.d: Deleted, content subsumed into cv-alu-fail-operand-03.d. * gas/riscv/cv-alu-03.l: Deleted, content subsumed into cv-alu-fail-operand-03.l. * gas/riscv/cv-alu-03.s: Deleted, content subsumed into cv-alu-fail-operand-03.s. * gas/riscv/cv-alu-04.d: Deleted, content subsumed into cv-alu-fail-operand-04.d. * gas/riscv/cv-alu-04.l: Deleted, content subsumed into cv-alu-fail-operand-04.l. * gas/riscv/cv-alu-04.s: Deleted, content subsumed into cv-alu-fail-operand-04.s. * gas/riscv/cv-alu-05.d: Deleted, content subsumed into cv-alu-fail-operand-05.d. * gas/riscv/cv-alu-05.l: Deleted, content subsumed into cv-alu-fail-operand-05.l. * gas/riscv/cv-alu-05.s: Deleted, content subsumed into cv-alu-fail-operand-05.s. * gas/riscv/cv-alu-06.d: Deleted, content subsumed into cv-alu-fail-operand-06.d. * gas/riscv/cv-alu-06.l: Deleted, content subsumed into cv-alu-fail-operand-06.l. * gas/riscv/cv-alu-06.s: Deleted, content subsumed into cv-alu-fail-operand-06.s. * gas/riscv/cv-alu-07.d: Deleted, content subsumed into cv-alu-fail-operand-06.d. * gas/riscv/cv-alu-07.l: Deleted, content subsumed into cv-alu-fail-operand-06.l. * gas/riscv/cv-alu-07.s: Deleted, content subsumed into cv-alu-fail-operand-06.s. * gas/riscv/cv-alu-08.d: Deleted, content subsumed into cv-alu-fail-operand-07.d. * gas/riscv/cv-alu-08.l: Deleted, content subsumed into cv-alu-fail-operand-07.l. * gas/riscv/cv-alu-08.s: Deleted, content subsumed into cv-alu-fail-operand-07.s. * gas/riscv/cv-alu-09.d: Deleted, content subsumed into cv-alu-fail-operand-07.d. * gas/riscv/cv-alu-09.l: Deleted, content subsumed into cv-alu-fail-operand-07.l. * gas/riscv/cv-alu-09.s: Deleted, content subsumed into cv-alu-fail-operand-07.s. * gas/riscv/cv-alu-10.d: Deleted, content subsumed into cv-alu-fail-operand-06.d. * gas/riscv/cv-alu-10.l: Deleted, content subsumed into cv-alu-fail-operand-06.l. * gas/riscv/cv-alu-10.s: Deleted, content subsumed into cv-alu-fail-operand-06.s. * gas/riscv/cv-alu-11.d: Deleted, content subsumed into cv-alu-fail-operand-06.d. * gas/riscv/cv-alu-11.l: Deleted, content subsumed into cv-alu-fail-operand-06.l. * gas/riscv/cv-alu-11.s: Deleted, content subsumed into cv-alu-fail-operand-06.s. * gas/riscv/cv-alu-12.d: Deleted, content subsumed into cv-alu-fail-operand-07.d. * gas/riscv/cv-alu-12.l: Deleted, content subsumed into cv-alu-fail-operand-07.l. * gas/riscv/cv-alu-12.s: Deleted, content subsumed into cv-alu-fail-operand-07.s. * gas/riscv/cv-alu-13.d: Deleted, content subsumed into cv-alu-fail-operand-07.d. * gas/riscv/cv-alu-13.l: Deleted, content subsumed into cv-alu-fail-operand-07.l. * gas/riscv/cv-alu-13.s: Deleted, content subsumed into cv-alu-fail-operand-07.s. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-hwloop-count.d: Renamed to cv-hwlp-count.d. * gas/riscv/cv-hwloop-count.s: Renamed to cv-hwlp-count.s. * gas/riscv/cv-hwloop-counti.d: Renamed to cv-hwlp-counti.d. * gas/riscv/cv-hwloop-counti.s: Renamed to cv-hwlp-counti.s. * gas/riscv/cv-hwloop-endi.d: Renamed to cv-hwlp-endi.d. * gas/riscv/cv-hwloop-endi.s: Renamed to cv-hwlp-endi.s. * gas/riscv/cv-hwloop-setup.d: Renamed to cv-hwlp-setup.d. * gas/riscv/cv-hwloop-setup.s: Renamed to cv-hwlp-setup.s. * gas/riscv/cv-hwloop-setupi.d: Renamed to cv-hwlp-setupi.d. * gas/riscv/cv-hwloop-setupi.s: Renamed to cv-hwlp-setupi.s. * gas/riscv/cv-hwloop-starti.d: Renamed to cv-hwlp-starti.d. * gas/riscv/cv-hwloop-starti.s: Renamed to cv-hwlp-starti.s. * gas/riscv/cv-hwlp-fail-march.d: Added new test. * gas/riscv/cv-hwlp-fail-march.l: Likewise. * gas/riscv/cv-hwlp-fail-march.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-01.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-01.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-01.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-02.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-02.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-02.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-03.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-03.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-03.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-04.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-04.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-04.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-05.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-05.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-05.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-06.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-06.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-06.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-07.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-07.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-07.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-09.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-09.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-09.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-10.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-10.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-10.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-11.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-11.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-11.s: Likewise. * gas/riscv/cv-hwlp-fail-operand-12.d: Likewise. * gas/riscv/cv-hwlp-fail-operand-12.l: Likewise. * gas/riscv/cv-hwlp-fail-operand-12.s: Likewise. * gas/riscv/cv-hwloop-01.d: Deleted, content subsumed into cv-hwlp-fail-operand-01.d. * gas/riscv/cv-hwloop-01.l: Deleted, content subsumed into cv-hwlp-fail-operand-01.l. * gas/riscv/cv-hwloop-01.s: Deleted, content subsumed into cv-hwlp-fail-operand-01.s. * gas/riscv/cv-hwloop-02.d: Deleted, content subsumed into cv-hwlp-fail-operand-01.d. * gas/riscv/cv-hwloop-02.l: Deleted, content subsumed into cv-hwlp-fail-operand-01.l. * gas/riscv/cv-hwloop-02.s: Deleted, content subsumed into cv-hwlp-fail-operand-01.s. * gas/riscv/cv-hwloop-03.d: Deleted, content subsumed into cv-hwlp-fail-operand-02.d. * gas/riscv/cv-hwloop-03.l: Deleted, content subsumed into cv-hwlp-fail-operand-02.l. * gas/riscv/cv-hwloop-03.s: Deleted, content subsumed into cv-hwlp-fail-operand-02.s. * gas/riscv/cv-hwloop-04.d: Deleted, content subsumed into cv-hwlp-fail-operand-03.d. * gas/riscv/cv-hwloop-04.l: Deleted, content subsumed into cv-hwlp-fail-operand-03.l. * gas/riscv/cv-hwloop-04.s: Deleted, content subsumed into cv-hwlp-fail-operand-03.s. * gas/riscv/cv-hwloop-05.d: Deleted, content subsumed into cv-hwlp-fail-operand-03.d. * gas/riscv/cv-hwloop-05.l: Deleted, content subsumed into cv-hwlp-fail-operand-03.l. * gas/riscv/cv-hwloop-05.s: Deleted, content subsumed into cv-hwlp-fail-operand-03.s. * gas/riscv/cv-hwloop-06.d: Deleted, content subsumed into cv-hwlp-fail-operand-04.d. * gas/riscv/cv-hwloop-06.l: Deleted, content subsumed into cv-hwlp-fail-operand-04.l. * gas/riscv/cv-hwloop-06.s: Deleted, content subsumed into cv-hwlp-fail-operand-04.s. * gas/riscv/cv-hwloop-07.d: Deleted, content subsumed into cv-hwlp-fail-operand-05.d. * gas/riscv/cv-hwloop-07.l: Deleted, content subsumed into cv-hwlp-fail-operand-05.l. * gas/riscv/cv-hwloop-07.s: Deleted, content subsumed into cv-hwlp-fail-operand-05.s. * gas/riscv/cv-hwloop-08.d: Deleted, content subsumed into cv-hwlp-fail-operand-05.d. * gas/riscv/cv-hwloop-08.l: Deleted, content subsumed into cv-hwlp-fail-operand-05.l. * gas/riscv/cv-hwloop-08.s: Deleted, content subsumed into cv-hwlp-fail-operand-05.s. * gas/riscv/cv-hwloop-09.d: Deleted, content subsumed into cv-hwlp-fail-operand-06.d. * gas/riscv/cv-hwloop-09.l: Deleted, content subsumed into cv-hwlp-fail-operand-06.l. * gas/riscv/cv-hwloop-09.s: Deleted, content subsumed into cv-hwlp-fail-operand-06.s. * gas/riscv/cv-hwloop-10.d: Deleted, content subsumed into cv-hwlp-fail-operand-06.d. * gas/riscv/cv-hwloop-10.l: Deleted, content subsumed into cv-hwlp-fail-operand-06.l. * gas/riscv/cv-hwloop-10.s: Deleted, content subsumed into cv-hwlp-fail-operand-06.s. * gas/riscv/cv-hwloop-11.d: Deleted, content subsumed into cv-hwlp-fail-operand-07.d. * gas/riscv/cv-hwloop-11.l: Deleted, content subsumed into cv-hwlp-fail-operand-07.l. * gas/riscv/cv-hwloop-11.s: Deleted, content subsumed into cv-hwlp-fail-operand-07.s. * gas/riscv/cv-hwloop-12.d: Deleted, content subsumed into cv-hwlp-fail-operand-08.d. * gas/riscv/cv-hwloop-12.l: Deleted, content subsumed into cv-hwlp-fail-operand-08.l. * gas/riscv/cv-hwloop-12.s: Deleted, content subsumed into cv-hwlp-fail-operand-08.s. * gas/riscv/cv-hwloop-13.d: Deleted, content subsumed into cv-hwlp-fail-operand-09.d. * gas/riscv/cv-hwloop-13.l: Deleted, content subsumed into cv-hwlp-fail-operand-09.l. * gas/riscv/cv-hwloop-13.s: Deleted, content subsumed into cv-hwlp-fail-operand-09.s. * gas/riscv/cv-hwloop-14.d: Deleted, content subsumed into cv-hwlp-fail-operand-10.d. * gas/riscv/cv-hwloop-14.l: Deleted, content subsumed into cv-hwlp-fail-operand-10.l. * gas/riscv/cv-hwloop-14.s: Deleted, content subsumed into cv-hwlp-fail-operand-10.s. * gas/riscv/cv-hwloop-15.d: Deleted, content subsumed into cv-hwlp-fail-operand-11.d. * gas/riscv/cv-hwloop-15.l: Deleted, content subsumed into cv-hwlp-fail-operand-11.l. * gas/riscv/cv-hwloop-15.s: Deleted, content subsumed into cv-hwlp-fail-operand-11.s. * gas/riscv/cv-hwloop-16.d: Deleted, content subsumed into cv-hwlp-fail-operand-01.d. * gas/riscv/cv-hwloop-16.l: Deleted, content subsumed into cv-hwlp-fail-operand-01.l. * gas/riscv/cv-hwloop-16.s: Deleted, content subsumed into cv-hwlp-fail-operand-01.s. * gas/riscv/cv-hwloop-17.d: Deleted, content subsumed into cv-hwlp-fail-operand-01.d. * gas/riscv/cv-hwloop-17.l: Deleted, content subsumed into cv-hwlp-fail-operand-01.l. * gas/riscv/cv-hwloop-17.s: Deleted, content subsumed into cv-hwlp-fail-operand-01.s. * gas/riscv/cv-hwloop-18.d: Deleted, content subsumed into cv-hwlp-fail-operand-03.d. * gas/riscv/cv-hwloop-18.l: Deleted, content subsumed into cv-hwlp-fail-operand-03.l. * gas/riscv/cv-hwloop-18.s: Deleted, content subsumed into cv-hwlp-fail-operand-03.s. * gas/riscv/cv-hwloop-19.d: Deleted, content subsumed into cv-hwlp-fail-operand-03.d. * gas/riscv/cv-hwloop-19.l: Deleted, content subsumed into cv-hwlp-fail-operand-03.l. * gas/riscv/cv-hwloop-19.s: Deleted, content subsumed into cv-hwlp-fail-operand-03.s. * gas/riscv/cv-hwloop-20.d: Deleted, content subsumed into cv-hwlp-fail-operand-05.d. * gas/riscv/cv-hwloop-20.l: Deleted, content subsumed into cv-hwlp-fail-operand-05.l. * gas/riscv/cv-hwloop-20.s: Deleted, content subsumed into cv-hwlp-fail-operand-05.s. * gas/riscv/cv-hwloop-21.d: Deleted, content subsumed into cv-hwlp-fail-operand-05.d. * gas/riscv/cv-hwloop-21.l: Deleted, content subsumed into cv-hwlp-fail-operand-05.l. * gas/riscv/cv-hwloop-21.s: Deleted, content subsumed into cv-hwlp-fail-operand-05.s. * gas/riscv/cv-hwloop-22.d: Deleted, content subsumed into cv-hwlp-fail-operand-06.d. * gas/riscv/cv-hwloop-22.l: Deleted, content subsumed into cv-hwlp-fail-operand-06.l. * gas/riscv/cv-hwloop-22.s: Deleted, content subsumed into cv-hwlp-fail-operand-06.s. * gas/riscv/cv-hwloop-23.d: Deleted, content subsumed into cv-hwlp-fail-operand-06.d. * gas/riscv/cv-hwloop-23.l: Deleted, content subsumed into cv-hwlp-fail-operand-06.l. * gas/riscv/cv-hwloop-23.s: Deleted, content subsumed into cv-hwlp-fail-operand-06.s. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-mac-machhsn.d: Removed obsolete instruction cv.machhs. * gas/riscv/cv-mac-machhun.d: Removed obsolete instruction cv.machhu. * gas/riscv/cv-mac-macsn.d: Removed obsolete instruction cv.macs. * gas/riscv/cv-mac-macun.d: Removed obsolete instruction cv.macu. include/ChangeLog.COREV: * opcode/riscv-opc.h: Removed obsolete matches and renamed mask accordingly - MATCH_MACS: Removed. MATCH_MACHHS: Removed. MATCH_MACU: Removed. MATCH_MACHHU: Removed. MASK_MULMAC -> MASK_MULSH opcodes/ChangeLog.COREV: * riscv-opc.c: Removed obsolete instructions - cv.macs: Removed. cv.machhs: Removed. cv.macu: Removed. cv.machhu: Removed. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/ChangeLog.COREV: * doc/c-riscv.texi: Added details on CORE-V hardware loop, multiply-accumulate and general ALU ops ISA options. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/ChangeLog.COREV: * config/tc-riscv.c: Added CORE-V general ALU operations support. gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-alu-01.d: Added new test. * gas/riscv/cv-alu-01.l: Likewise. * gas/riscv/cv-alu-01.s: Likewise. * gas/riscv/cv-alu-02.d: Likewise. * gas/riscv/cv-alu-02.l: Likewise. * gas/riscv/cv-alu-02.s: Likewise. * gas/riscv/cv-alu-03.d: Likewise. * gas/riscv/cv-alu-03.l: Likewise. * gas/riscv/cv-alu-03.s: Likewise. * gas/riscv/cv-alu-04.d: Likewise. * gas/riscv/cv-alu-04.l: Likewise. * gas/riscv/cv-alu-04.s: Likewise. * gas/riscv/cv-alu-05.d: Likewise. * gas/riscv/cv-alu-05.l: Likewise. * gas/riscv/cv-alu-05.s: Likewise. * gas/riscv/cv-alu-06.d: Likewise. * gas/riscv/cv-alu-06.l: Likewise. * gas/riscv/cv-alu-06.s: Likewise. * gas/riscv/cv-alu-07.d: Likewise. * gas/riscv/cv-alu-07.l: Likewise. * gas/riscv/cv-alu-07.s: Likewise. * gas/riscv/cv-alu-08.d: Likewise. * gas/riscv/cv-alu-08.l: Likewise. * gas/riscv/cv-alu-08.s: Likewise. * gas/riscv/cv-alu-09.d: Likewise. * gas/riscv/cv-alu-09.l: Likewise. * gas/riscv/cv-alu-09.s: Likewise. * gas/riscv/cv-alu-10.d: Likewise. * gas/riscv/cv-alu-10.l: Likewise. * gas/riscv/cv-alu-10.s: Likewise. * gas/riscv/cv-alu-11.d: Likewise. * gas/riscv/cv-alu-11.l: Likewise. * gas/riscv/cv-alu-11.s: Likewise. * gas/riscv/cv-alu-12.d: Likewise. * gas/riscv/cv-alu-12.l: Likewise. * gas/riscv/cv-alu-12.s: Likewise. * gas/riscv/cv-alu-13.d: Likewise. * gas/riscv/cv-alu-13.l: Likewise. * gas/riscv/cv-alu-13.s: Likewise. * gas/riscv/cv-alu-abs.d: Likewise. * gas/riscv/cv-alu-abs.s: Likewise. * gas/riscv/cv-alu-addn.d: Likewise. * gas/riscv/cv-alu-addn.s: Likewise. * gas/riscv/cv-alu-addnr.d: Likewise. * gas/riscv/cv-alu-addnr.s: Likewise. * gas/riscv/cv-alu-addrn.d: Likewise. * gas/riscv/cv-alu-addrn.s: Likewise. * gas/riscv/cv-alu-addrnr.d: Likewise. * gas/riscv/cv-alu-addrnr.s: Likewise. * gas/riscv/cv-alu-addun.d: Likewise. * gas/riscv/cv-alu-addun.s: Likewise. * gas/riscv/cv-alu-addunr.d: Likewise. * gas/riscv/cv-alu-addunr.s: Likewise. * gas/riscv/cv-alu-addurn.d: Likewise. * gas/riscv/cv-alu-addurn.s: Likewise. * gas/riscv/cv-alu-addurnr.d: Likewise. * gas/riscv/cv-alu-addurnr.s: Likewise. * gas/riscv/cv-alu-clip.d: Likewise. * gas/riscv/cv-alu-clip.s: Likewise. * gas/riscv/cv-alu-clipr.d: Likewise. * gas/riscv/cv-alu-clipr.s: Likewise. * gas/riscv/cv-alu-clipu.d: Likewise. * gas/riscv/cv-alu-clipu.s: Likewise. * gas/riscv/cv-alu-clipur.d: Likewise. * gas/riscv/cv-alu-clipur.s: Likewise. * gas/riscv/cv-alu-extbs.d: Likewise. * gas/riscv/cv-alu-extbs.s: Likewise. * gas/riscv/cv-alu-extbz.d: Likewise. * gas/riscv/cv-alu-extbz.s: Likewise. * gas/riscv/cv-alu-exths.d: Likewise. * gas/riscv/cv-alu-exths.s: Likewise. * gas/riscv/cv-alu-exthz.d: Likewise. * gas/riscv/cv-alu-exthz.s: Likewise. * gas/riscv/cv-alu-march-rv32i-xcorev.d: Likewise. * gas/riscv/cv-alu-march-rv32i-xcorev.s: Likewise. * gas/riscv/cv-alu-max.d: Likewise. * gas/riscv/cv-alu-max.s: Likewise. * gas/riscv/cv-alu-maxu.d: Likewise. * gas/riscv/cv-alu-maxu.s: Likewise. * gas/riscv/cv-alu-min.d: Likewise. * gas/riscv/cv-alu-min.s: Likewise. * gas/riscv/cv-alu-minu.d: Likewise. * gas/riscv/cv-alu-minu.s: Likewise. * gas/riscv/cv-alu-slet.d: Likewise. * gas/riscv/cv-alu-slet.s: Likewise. * gas/riscv/cv-alu-sletu.d: Likewise. * gas/riscv/cv-alu-sletu.s: Likewise. * gas/riscv/cv-alu-subn.d: Likewise. * gas/riscv/cv-alu-subn.s: Likewise. * gas/riscv/cv-alu-subnr.d: Likewise. * gas/riscv/cv-alu-subnr.s: Likewise. * gas/riscv/cv-alu-subrn.d: Likewise. * gas/riscv/cv-alu-subrn.s: Likewise. * gas/riscv/cv-alu-subrnr.d: Likewise. * gas/riscv/cv-alu-subrnr.s: Likewise. * gas/riscv/cv-alu-subun.d: Likewise. * gas/riscv/cv-alu-subun.s: Likewise. * gas/riscv/cv-alu-subunr.d: Likewise. * gas/riscv/cv-alu-subunr.s: Likewise. * gas/riscv/cv-alu-suburn.d: Likewise. * gas/riscv/cv-alu-suburn.s: Likewise. * gas/riscv/cv-alu-suburnr.d: Likewise. * gas/riscv/cv-alu-suburnr.s: Likewise. include/ChangeLog.COREV: * opcode/riscv-opc.h: Added CORE-V general ALU operations support. * opcode/riscv.h: Likewise. opcodes/ChangeLog.COREV: * riscv-dis.c: Added CORE-V general ALU operations support. * riscv-opc.c: Likewise. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/ChangeLog.COREV: * config/tc-riscv.c: Fixed bug in hardware loop operand boundary checks (b1 and b2). gas/testsuite/ChangeLog.COREV: * cv-hwloop-16.d: Added new boundary test. * cv-hwloop-16.l: Likewise. * cv-hwloop-16.s: Likewise. * cv-hwloop-17.d: Likewise. * cv-hwloop-17.l: Likewise. * cv-hwloop-17.s: Likewise. * cv-hwloop-18.d: Likewise. * cv-hwloop-18.l: Likewise. * cv-hwloop-18.s: Likewise. * cv-hwloop-19.d: Likewise. * cv-hwloop-19.l: Likewise. * cv-hwloop-19.s: Likewise. * cv-hwloop-20.d: Likewise. * cv-hwloop-20.l: Likewise. * cv-hwloop-20.s: Likewise. * cv-hwloop-21.d: Likewise. * cv-hwloop-21.l: Likewise. * cv-hwloop-21.s: Likewise. * cv-hwloop-22.d: Likewise. * cv-hwloop-22.l: Likewise. * cv-hwloop-22.s: Likewise. * cv-hwloop-23.d: Likewise. * cv-hwloop-23.l: Likewise. * cv-hwloop-23.s: Likewise. * cv-hwloop-09.s: Fixed incorrect comment. * cv-hwloop-10.s: Likewise. * cv-mac-07.d: Added new boundary test. * cv-mac-07.l: Likewise. * cv-mac-07.s: Likewise. * cv-mac-08.d: Likewise. * cv-mac-08.l: Likewise. * cv-mac-08.s: Likewise. * cv-mac-05.l: Changed to non-boundary value. * cv-mac-05.s: Likewise. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Jessica Mills authored
gas/ChangeLog.COREV: * config/tc-riscv.c: Added CORE-V multiply accumulate support. gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-mac-01.d: Added new test. * gas/riscv/cv-mac-01.l: Likewise. * gas/riscv/cv-mac-01.s: Likewise. * gas/riscv/cv-mac-02.d: Likewise. * gas/riscv/cv-mac-02.l: Likewise. * gas/riscv/cv-mac-02.s: Likewise. * gas/riscv/cv-mac-03.d: Likewise. * gas/riscv/cv-mac-03.l: Likewise. * gas/riscv/cv-mac-03.s: Likewise. * gas/riscv/cv-mac-04.d: Likewise. * gas/riscv/cv-mac-04.l: Likewise. * gas/riscv/cv-mac-04.s: Likewise. * gas/riscv/cv-mac-05.d: Likewise. * gas/riscv/cv-mac-05.l: Likewise. * gas/riscv/cv-mac-05.s: Likewise. * gas/riscv/cv-mac-06.d: Likewise. * gas/riscv/cv-mac-06.l: Likewise. * gas/riscv/cv-mac-06.s: Likewise. * gas/riscv/cv-mac-mac.d: Likewise. * gas/riscv/cv-mac-mac.s: Likewise. * gas/riscv/cv-mac-machhsn.d: Likewise. * gas/riscv/cv-mac-machhsn.s: Likewise. * gas/riscv/cv-mac-machhsrn.d: Likewise. * gas/riscv/cv-mac-machhsrn.s: Likewise. * gas/riscv/cv-mac-machhun.d: Likewise. * gas/riscv/cv-mac-machhun.s: Likeiwse. * gas/riscv/cv-mac-machhurn.d: Likewise. * gas/riscv/cv-mac-machhurn.s: Likewise. * gas/riscv/cv-mac-machhurn.d: Likewise. * gas/riscv/cv-mac-machhurn.s: Likewise. * gas/riscv/cv-mac-macsrn.d: Likewise. * gas/riscv/cv-mac-macsrn.s: Likewise. * gas/riscv/cv-mac-macun.d: Likewise. * gas/riscv/cv-mac-macun.s: Likewise. * gas/riscv/cv-mac-macurn.d: Likewise. * gas/riscv/cv-mac-macurn.s: Likewise. * gas/riscv/cv-mac-msu.d: Likewise. * gas/riscv/cv-mac-msu.s: Likewise. * gas/riscv/cv-mac-mulhhs.d: Likewise. * gas/riscv/cv-mac-mulhhs.s: Likewise. * gas/riscv/cv-mac-mulhhsn.d: Likewise. * gas/riscv/cv-mac-mulhhsn.s: Likewise. * gas/riscv/cv-mac-mulhhsrn.d: Likewise. * gas/riscv/cv-mac-mulhhsrn.s: Likewise. * gas/riscv/cv-mac-mulhhu.d: Likewise. * gas/riscv/cv-mac-mulhhu.s: Likewise. * gas/riscv/cv-mac-mulhhun.d: Likewise. * gas/riscv/cv-mac-mulhhun.s: Likewise. * gas/riscv/cv-mac-mulhhurn.d: Likewise. * gas/riscv/cv-mac-mulhhurn.s: Likewise. * gas/riscv/cv-mac-muls.d: Likewise. * gas/riscv/cv-mac-muls.s: Likewise. * gas/riscv/cv-mac-mulsn.d: Likewise. * gas/riscv/cv-mac-mulsn.s: Likewise. * gas/riscv/cv-mac-mulsrn.d: Likewise. * gas/riscv/cv-mac-mulsrn.s: Likewise. * gas/riscv/cv-mac-mulu.d: Likewise. * gas/riscv/cv-mac-mulu.s: Likewise. * gas/riscv/cv-mac-mulun.d: Likewise. * gas/riscv/cv-mac-mulun.s: Likewise. * gas/riscv/cv-mac-mulurn.d: Likewise. * gas/riscv/cv-mac-mulurn.s: Likewise. * gas/riscv/cv-mac-march-rv32i-xcorev.s: Likewise. * gas/riscv/cv-mac-march-rv32i-xcorev.d: Likewise. * gas/riscv/cv-hwloop-march-rv32i-xcorev.s: Renamed to seperate from mac. * gas/riscv/cv-hwloop-march-rv32i-xcorev.d: Likewise. include/ChangeLog.COREV: * opcode/riscv-opc.h: Added CORE-V multiply accumulate support. * opcode/riscv.h: Likewise. opcodes/ChangeLog.COREV: * riscv-dis.c: Added CORE-V multiply accumulate support. * riscv-opc.c: Likewise. Signed-off-by:Jessica Mills <jessica.mills@embecosm.com>
-
Mary Bennett authored
The existing CORE-V macro names are inconsistent (inherited from the PULP project). This series of commits provides more meaningful names. bfd/ChangeLog.COREV: * elfnn-riscv.c (perform_relocation): Renamed macros for clarity - ENCODE_I1TYPE_UIMM -> ENCODE_CV_HWLP_UIMM5 ENCODE_I1TYPE_LN -> ENCODE_CV_HWLP_LN * elfxx-riscv.c: Renamed macros for clarity - EXTRACT_I1TYPE_UIMM-> EXTRACT_CV_HWLP_UIMM5 EXTRACT_I1TYPE_LN -> EXTRACT_CV_HWLP_LN EXTRACT_ITYPE_UIMM -> EXTRACT_CV_HWLP_UIMM12 gas/ChangeLog.COREV: * config/tc-riscv.c (validate_riscv_insn): Renamed macros for clarity - ENCODE_I1TYPE_UIMM -> ENCODE_CV_HWLP_UIMM5 ENCODE_I1TYPE_LN -> ENCODE_CV_HWLP_LN * config/tc-riscv.c (md_apply_fix): Renamed macros for clarity - ENCODE_I1TYPE_UIMM -> ENCODE_CV_HWLP_UIMM5 include/ChangeLog.COREV: * opcode/riscv.h (riscv_pred_succ): Renamed macros for clarity - ENCODE_I1TYPE_UIMM -> ENCODE_CV_HWLP_UIMM5 ENCODE_I1TYPE_LN -> ENCODE_CV_HWLP_LN EXTRACT_I1TYPE_UIMM-> EXTRACT_CV_HWLP_UIMM5 EXTRACT_I1TYPE_LN -> EXTRACT_CV_HWLP_LN EXTRACT_ITYPE_UIMM -> EXTRACT_CV_HWLP_UIMM12 opcodes/ChangeLog.COREV: * riscv-opc.c (print_insn_args): Renamed macros for clarity - EXTRACT_I1TYPE_UIMM-> EXTRACT_CV_HWLP_UIMM5 EXTRACT_ITYPE_UIMM -> EXTRACT_CV_HWLP_UIMM12 Signed-off-by:Mary Bennett <mary.bennett@embecosm.com>
-
Mary Bennett authored
gas/ChangeLog.COREV: * config/tc-riscv.c: Fixed issue arising from incorrect CORE-V hardware loop masks and added support for xcorevhwlp. gas/testsuite/ChangeLog.COREV: * gas/riscv/cv-hwloop-01.d: Changed march option to xcorehwlp. * gas/riscv/cv-hwloop-02.d: Likewise. * gas/riscv/cv-hwloop-03.d: Likewise. * gas/riscv/cv-hwloop-04.d: Likewise. * gas/riscv/cv-hwloop-05.d: Likewise. * gas/riscv/cv-hwloop-06.d: Likewise. * gas/riscv/cv-hwloop-07.d: Likewise. * gas/riscv/cv-hwloop-08.d: Likewise. * gas/riscv/cv-hwloop-count.d: Likewise. * gas/riscv/cv-hwloop-counti.d: Likewise. * gas/riscv/cv-hwloop-endi.d: Likewise. * gas/riscv/cv-hwloop-setup.d: Likewise. * gas/riscv/cv-hwloop-setupi.d: Likewise. * gas/riscv/cv-hwloop-starti.d: Likewise. * gas/riscv/cv-hwloop-09.d: Likewise. * gas/riscv/cv-hwloop-10.d: Likewise. * gas/riscv/cv-hwloop-11.d: Added new test. * gas/riscv/cv-hwloop-11.l: Likewise. * gas/riscv/cv-hwloop-11.s: Likewise. * gas/riscv/cv-hwloop-12.d: Likewise. * gas/riscv/cv-hwloop-12.l: Likewise. * gas/riscv/cv-hwloop-12.s: Likewise. * gas/riscv/cv-hwloop-13.d: Likewise. * gas/riscv/cv-hwloop-13.l: Likewise. * gas/riscv/cv-hwloop-13.s: Likewise. * gas/riscv/cv-hwloop-14.d: Likewise. * gas/riscv/cv-hwloop-14.l: Likewise. * gas/riscv/cv-hwloop-14.s: Likewise. * gas/riscv/cv-hwloop-15.d: Likewise. * gas/riscv/cv-hwloop-15.l: Likewise. * gas/riscv/cv-hwloop-15.s: Likewise. * gas/riscv/cv-march-rv32i-xcorev.s: Added test for march option. * gas/riscv/cv-march-rv32i-xcorev.d: Likewise. include/ChangeLog.COREV: * opcode/riscv-opc.h: Fixed incorrect masks for CORE-V hardware loop instructions. * opcode/riscv.h: Added support for xcorevhwlp. ld/testsuite/ChangeLog.COREV: * ld-riscv-elf/cv-hwloop-starti.d: Changed march option to xcorevhwlp. * ld-riscv-elf/cv-hwloop-endi.d: Likewise. * ld-riscv-elf/cv-hwloop-setup.d: Likewise. * ld-riscv-elf/cv-hwloop-setupi.d: Likewise. opcodes/ChangeLog.COREV: * riscv-opc.c: Added support for corevhwlp. Signed-off-by:Mary Bennett <mary.bennett@embecosm.com>
-
Pietra Ferreira authored
Added two relocations REL12 and RELU5, the CORE-V INSN_CLASSes, the MATCH and MASKs and the hardware loop instructions. bfd/ChangeLog: * bfd-in2.h: Added CORE-V hardware loop specific relocations. * elfnn-riscv.c: Added relocations for CORE-V hardware loop. * elfxx-riscv.c: Added relocations and amend howto lookup. * riscv.c: Added BFD_RELOC_RISCV_CVPCREL_UI12 and BFD_RELOC_RISCV_CVPCREL_URS1. gas/ChangeLog: * config/tc-riscv.c: Added CORE-V harware loop support. * config/tc-riscv.h: Likewise. * doc/c-riscv.texi: Noted Xcorev as additional ISA extension for CORE-V. gas/testsuite/ChangeLog: * gas/riscv/cv-hwloop-01.d: Added new test. * gas/riscv/cv-hwloop-01.l: Likewise. * gas/riscv/cv-hwloop-01.s: Likewise. * gas/riscv/cv-hwloop-02.d: Likewise. * gas/riscv/cv-hwloop-02.l: Likewise. * gas/riscv/cv-hwloop-02.s: Likewise. * gas/riscv/cv-hwloop-03.d: Likewise. * gas/riscv/cv-hwloop-03.l: Likewise. * gas/riscv/cv-hwloop-03.s: Likewise. * gas/riscv/cv-hwloop-04.d: Likewise. * gas/riscv/cv-hwloop-04.l: Likewise. * gas/riscv/cv-hwloop-04.s: Likewise. * gas/riscv/cv-hwloop-05.d: Likewise. * gas/riscv/cv-hwloop-05.l: Likewise. * gas/riscv/cv-hwloop-05.s: Likewise. * gas/riscv/cv-hwloop-06.d: Likewise. * gas/riscv/cv-hwloop-06.l: Likewise. * gas/riscv/cv-hwloop-06.s: Likewise. * gas/riscv/cv-hwloop-07.d: Likewise. * gas/riscv/cv-hwloop-07.l: Likewise. * gas/riscv/cv-hwloop-07.s: Likewise. * gas/riscv/cv-hwloop-08.d: Likewise. * gas/riscv/cv-hwloop-08.l: Likewise. * gas/riscv/cv-hwloop-08.s: Likewise. * gas/riscv/cv-hwloop-count.d: Likewise. * gas/riscv/cv-hwloop-count.s: Likewise. * gas/riscv/cv-hwloop-counti.d: Likewise. * gas/riscv/cv-hwloop-counti.s: Likewise. * gas/riscv/cv-hwloop-endi.d: Likewise. * gas/riscv/cv-hwloop-endi.s: Likewise. * gas/riscv/cv-hwloop-setup.d: Likewise. * gas/riscv/cv-hwloop-setup.s: Likewise. * gas/riscv/cv-hwloop-setupi.d: Likewise. * gas/riscv/cv-hwloop-setupi.s: Likewise. * gas/riscv/cv-hwloop-starti.d: Likewise. * gas/riscv/cv-hwloop-starti.s: Likewise. * gas/riscv/cv-hwloop-09.d: Likewise. * gas/riscv/cv-hwloop-09.l: Likewise. * gas/riscv/cv-hwloop-09.s: Likewise. * gas/riscv/cv-hwloop-10.d: Likewise. * gas/riscv/cv-hwloop-10.l: Likewise. * gas/riscv/cv-hwloop-10.s: Likewise. include/ChangeLog: * elf/riscv.h: Added CORE-V hardware loop specific relocations. * opcode/riscv.h: Added CORE-V hardware loop specific masks and CORE-V instruction class. Added macros for unsigned I type immediate and loop number. ld/ChangeLog: * emultempl/riscvelf.em: Added initial CORE-V support. ld/testsuite/ChangeLog: * ld-riscv-elf/ld-riscv-elf.exp: Added CORE-V hardware loop tests. * ld-riscv-elf/cv-hwloop-starti.s: Added new test. * ld-riscv-elf/cv-hwloop-starti.d: Likewise. * ld-riscv-elf/cv-hwloop-endi.d: Likewise. * ld-riscv-elf/cv-hwloop-endi.s: Likewise. * ld-riscv-elf/cv-hwloop-setup.d: Likewise. * ld-riscv-elf/cv-hwloop-setup.s: Likewise. * ld-riscv-elf/cv-hwloop-setupi.d: Likewise. * ld-riscv-elf/cv-hwloop-setupi.s: Likewise. opcodes/ChangeLog: * riscv-dis.c: Added CORE-V hardware loop support. * riscv-opc.c: Likewise. Signed-off-by:Mary Bennett <mary.bennett@embecosm.com>
-
Jeremy Bennett authored
ChangeLog: * README: Updated with CORE-V specific details. Signed-off-by:Jeremy Bennett <jeremy.bennett@embecosm.com>
-
Christoph Muellner authored
The recently added support for the Zicbo{m,p,z} extensions did not include DECLARE_INSN() declarations for the instructions. These declarations are needed by GDB's instruction detection code. This patch adds them. Signed-off-by:Christoph Muellner <cmuellner@gcc.gnu.org>
-
GDB Administrator authored
-
Carl Love authored
The variable right_lib_flags is not being set correctly to define RIGHT. The value RIGHT is needed to force the address of the library functions lib1_func3 and lib2_func4 to occur at different address in the wrong and right libraries. With RIGHT defined correctly, functions lib1_func3 and lib2_func4 occur at different addresses the test runs correctly on Powerpc. The test needs the lib2 addresses to be different in the right and wrong cases. That is the point of introducing function lib2_spacer with the ifdef RIGHT compiler directive. On Intel, the ARRAY_SIZE of 1 versus 8192 is sufficient to get the dynamic linker to move the addresses of the library. You can also get the same effect on PowerPC but you must use a value much larger than 8192. The key thing is that the test was not properly setting RIGHT to defined to get the lib2_spacer function on Intel and Powerpc. Without the patch, we have the Intel backtrace for the bad libraries: backtrace #0 break_here () at /home/ ... /gdb/testsuite/gdb.base/solib-search.c:30 #1 0x00007ffff7fae156 in ?? () #2 0x00007fffffffc150 in ?? () #3 0x00007ffff7fbb156 in ?? () #4 0x00007fffffffc160 in ?? () #5 0x00007ffff7fae146 in ?? () #6 0x00007fffffffc170 in ?? () #7 0x00007ffff7fbb146 in ?? () #8 0x00007fffffffc180 in ?? () #9 0x0000555555555156 in main () at /home/ ... /binutils-gdb/gdb/testsuite/gdb.base/solib-search.c:23 Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) PASS: gdb.base/solib-search.exp: backtrace (with wrong libs) (data collection) The backtrace on Intel with the good libraries is: backtrace #0 break_here () at /.../binutils-gdb/gdb/testsuite/gdb.base/solib-search.c:30 #1 0x00007ffff7fae156 in lib2_func4 () at /.../binutils-gdb/gdb/testsuite/gdb.base/solib-search-lib2.c:49 #2 0x00007ffff7fbb156 in lib1_func3 () at /.../gdb.base/solib-search-lib1.c:49 #3 0x00007ffff7fae146 in lib2_func2 () at /.../testsuite/gdb.base/solib-search-lib2.c:30 #4 0x00007ffff7fbb146 in lib1_func1 () at /.../gdb.base/solib-search-lib1.c:30 #5 0x0000555555555156 in main () at /...solib-search.c:23 (gdb) PASS: gdb.base/solib-search.exp: backtrace (with right libs) (data collection) PASS: gdb.base/solib-search.exp: backtrace (with right libs) In one case the backtrace is correct and the other it is wrong on Intel. This is due to the fact that the ARRAY_SIZE caused the dynamic linker to move the library function addresses around. I believe it has to do with the default size of the data and code sections used by the dynamic linker. So without the patch the backtrace on PowerPC looks like: backtrace #0 break_here () at /.../solib-search.c:30 #1 0x00007ffff7f007f4 in lib2_func4 () at /.../solib-search-lib2.c:49 #2 0x00007ffff7f307f4 in lib1_func3 () at /.../solib-search-lib1.c:49 #3 0x00007ffff7f007ac in lib2_func2 () at /.../solib-search-lib2.c:30 #4 0x00007ffff7f307ac in lib1_func1 () at /.../solib-search-lib1.c:30 #5 0x000000001000074c in main () at /.../solib-search.c:23 for both the good and bad libraries. The patch fixes defining RIGHT in solib-search-lib1.c and solib-search- lib2.c. Note, without the patch the lib1_spacer and lib2_spacer functions do not show up in the object dump of the Intel or Powerpc libraries as it should. The patch fixes that by making sure RIGHT gets defined. Now with the patch the backtrace for the bad library on PowerPC looks like: backtrace #0 break_here () at /.../solib-search.c:30 #1 0x00007ffff7f0083c in __glink_PLTresolve () from /.../solib-search-lib2.so Backtrace stopped: frame did not save the PC And the backtrace for the good libraries on PowerPC looks like: backtrace #0 break_here () at /.../solib-search.c:30 #1 0x00007ffff7f0083c in lib2_func4 () at /.../solib-search-lib2.c:49 #2 0x00007ffff7f3083c in lib1_func3 () at /.../solib-search-lib1.c:49 #3 0x00007ffff7f007cc in lib2_func2 () at /.../solib-search-lib2.c:30 #4 0x00007ffff7f307cc in lib1_func1 () at /.../solib-search-lib1.c:30 #5 0x000000001000074c in main () at /.../solib-search.c:23 (gdb) PASS: gdb.base/solib-search.exp: backtrace (with right libs) (data collection) PASS: gdb.base/solib-search.exp: backtrace (with right libs) The issue then is on Power where the ARRAY_SIZE of 1 versus 8192 is not sufficient to cause the dymanic linker to allocate the libraries at different addresses. I don't claim to understand the specifics of how the dynamic linker works and what the default size is for the data and code sections are. My guess is by default PowerPC allocates a larger data size by default, which is large enough to hold array[8192]. The default size of the data section allocated by the dynamic linker on Intel is not large enough to hold array[8192] thus causing the code section on Intel to have to move when the large array is defined. Note on PowerPC, if you make ARRAY_SIZE big enough, then you will cause the library addresses to occur at different addresses as the larger data section forces the code section to a different address. That was actually my original fix for the program until I spoke with Doug Evans who originally wrote the test. Doug noticed that RIGHT was not getting defined as he originally intended in the test. With the patch to fix the definition of RIGHT, PowerPC has a bad and a good backtrace because the address of lib1_func3 and lib2_func4 both move because lib1_spacer and lib2_spacer are now defined before lib1_func3 and lib2_func4. Without the patch, the lib1_spacer and lib2_spacer function doesn't show up in the binary for the correct or incorrect library on Intel or PowerPC. With the patch, RIGHT gets defined as originally intended for the test on both architectures and lib1_spacer and lib2_spacer function show up in the binaries on both architectures changing the other function addresses as intended thus causing the test work as intended on PowerPC.
-
Simon Marchi authored
This can be a local in dwarf_decode_line_header. Change-Id: I2ecf4616d1a3197bd1e81ded9f999a2da9a685af
-
Simon Marchi authored
This doesn' have to be a field, it can simply be a local variable in dwarf_decode_line_header. Name the local variable "unit_length", since that's what the field in called in DWARF 4 and 5. It's always easier to follow the code with the standard on the side when we use the same terminology. Change-Id: I3ad1022afd9410b193ea11b9b5437686c1e4e633
-
Simon Marchi authored
Commit c67f4e53 ("gdb/testsuite: make gdb.ada/mi_prot.exp stop at expected location") introduced some DUPLICATEs in MI tests using mi_continue_to_line, for example: DUPLICATE: gdb.ada/mi_ref_changeable.exp: mi_continue_to_line: set temporary breakpoint These test names were previously differentiated by the location passed to mi_continue_to_line. Since the location can contain a path, that commit removed the location from the test name, in favor of a hardcoded string "set temporary breakpoint", hence removing the differentiator. mi_continue_to_line receives a "test" parameter, containing a test name. Add a "with_test_prefix" with that name, so that all tests recorded during mi_continue_to_line have this in their name. mi_continue_to_line passes that "test" string to mi_get_stop_line, that is a bit superfluous. mi_get_stop_line only uses that string in case of failures (it doesn't record a pass if everything goes fine). Since it's not crucial, just remove it, and adjust all callers. Adjust three gdb.mi/mi-var-*.exp tests to use prefixes to differentiate the multiple calls to mi_run_inline_test (which calls mi_continue_to_line). Change-Id: I511c6caa70499f8657b1cde37d71068d74d56a74
-
Tom Tromey authored
Internally we noticed that some tests would fail like so on Windows: warning: Section .debug_aranges in [...] has duplicate debug_info_offset 0x0, ignoring .debug_aranges. Debugging showed that, in fact, a second CU was being created at this offset. We tracked this down to the fact that, while the ELF reader is careful to re-use the per-BFD data, other readers are not, and could re-read the DWARF data multiple times. However, since the change to allow an objfile to have multiple "quick symbol" implementations, there's no reason for this approach -- it's safe and easy for all symbol readers to reuse the per-BFD data when reading DWARF. This patch implements this idea, simplifying dwarf2_build_psymtabs and making it private, and then switching to dwarf2_initialize_objfile as the sole way to start the DWARF reader. Note that, while I think the call to dwarf2_build_frame_info in machoread.c is also obsolete, I haven't attempted to remove it here.
-
Andrew Burgess authored
The following behaviour was observed in GDB: (gdb) show remote X-packet Support for the `p' packet is auto-detected, currently unknown. Note the message mentions the 'p' packet. This is a regression since this commit: commit 8579fd13 Date: Mon Nov 8 14:58:46 2021 +0000 gdb/gdbsupport: make xstrprintf and xstrvprintf return a unique_ptr Before this commit the behaviour was: (gdb) show remote X-packet Support for the `X' packet is auto-detected, currently unknown. The problem was caused by a failed attempt to ensure that some allocated strings were deleted when GDB exits. The code in the above commit attempted to make use of 'static' to solve this problem, however, the solution was just wrong. In this new commit I instead allocate a static vector into which all the allocated strings are stored, this ensures the strings are released when GDB exits (which makes output from tools like valgrind cleaner), but each string within the vector can be unique, which fixes the regression.
-
- Apr 21, 2022
-
-
Simon Marchi authored
In this review [1], Eli pointed out that we should be careful when concatenating file names to avoid duplicated slashes. On Windows, a double slash at the beginning of a file path has a special meaning. So naively concatenating "/" and "foo/bar" would give "//foo/bar", which would not give the desired results. We already have a few spots doing: if (first_path ends with a slash) path = first_path + second_path else path = first_path + slash + second_path In general, I think it's nice to avoid superfluous slashes in file paths, since they might end up visible to the user and look a bit unprofessional. Introduce the path_join function that can be used to join multiple path components together (along with unit tests). I initially wanted to make it possible to join two absolute paths, to support the use case of prepending a sysroot path to a target file path, or the prepending the debug-file-directory to a target file path. But the code in solib_find_1 shows that it is more complex than this anyway (for example, when the right hand side is a Windows path with a drive letter). So I don't think we need to support that case in path_join. That also keeps the implementation simpler. Change a few spots to use path_join to show how it can be used. I believe that all the spots I changed are guarded by some checks that ensure the right hand side operand is not an absolute path. Regression-tested on Ubuntu 18.04. Built-tested on Windows, and I also ran the new unit-test there. [1] https://sourceware.org/pipermail/gdb-patches/2022-April/187559.html Change-Id: I0df889f7e3f644e045f42ff429277b732eb6c752 -
Lancelot SIX authored
In a previous commit (b750766a: gdb/testsuite: Introduce and use gdb_spawn_attach_cmdline), if gdb_spawn_attach_cmdline cannot have GDB attach to the process because of ptrace restrictions (operation not permitted), the proc issues UNTESTED. This should really be UNSUPPORTED, as it is done in gdb_attach. This patch fixes this oversight. Change-Id: Ib87e33b9230f3fa7a85e06220ef4c63814b71f7d
-
Enze Li authored
We currently only test decimal and hexadecimal for the gdb.Value.format_string() interface, this patch adds testcases for binary format. Tested on x86_64 openSUSE Tumbleweed(VERSION_ID="20220413").
-
Pedro Alves authored
The gdb_test_multiple pattern for the "notice empty URL" test in gdb.debuginfod/fetch_src_and_symbols.exp misses expecting the prompt. Fix it by using -re -wrap. Also, by using "confirm off", the message GDB prints if Debuginfod downloading is available doesn't contain "Enable debuginfod" any longer. E.g.: ~~~ (gdb) file testsuite/outputs/gdb.debuginfod/fetch_src_and_symbols/fetch_src_and_symbols Reading symbols from testsuite/outputs/gdb.debuginfod/fetch_src_and_symbols/fetch_src_and_symbols... This GDB supports auto-downloading debuginfo from the following URLs: <http://localhost:123> Enable debuginfod for this session? (y or [n]) ~~~ ~~~ (gdb) with confirm off -- file testsuite/outputs/gdb.debuginfod/fetch_src_and_symbols/fetch_src_and_symbols Reading symbols from testsuite/outputs/gdb.debuginfod/fetch_src_and_symbols/fetch_src_and_symbols... This GDB supports auto-downloading debuginfo from the following URLs: <http://127.0.0.1:8000> <127.0.0.1:8000> Debuginfod has been disabled. To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit. (No debugging symbols found in testsuite/outputs/gdb.debuginfod/fetch_src_and_symbols/fetch_src_and_symbols) (gdb) ~~~ I handled that correctly in the other tests that use test_urls, but had forgotten to update the "notice empty URL" one. Change-Id: I00040c83466e1494b3875574eb009c571a1504bf -
Alan Modra authored
binutils/ * testsuite/lib/binutils-common.exp (prune_warnings_extra): Remove .note.GNU-stack warning. (run_dump_test): Call prune_warnings for ld and objcopy output. ld/ * testsuite/ld-elf/elf.exp: Disable prune_warnings_extra temporarily around test for absent .note.GNU-stack * testsuite/ld-cris/globsymw2.s, * testsuite/ld-cris/warn3.d: Modify "is not implemented" message to avoid dejagnu prune_warnings.
-
Alan Modra authored
* testsuite/ld-scripts/defined5.d: Don't xfail xcoff targets.
-
Alan Modra authored
* config/obj-coff.h (sy_obj): Don't define. (OBJ_SYMFIELD_TYPE): Revise comments.
-
GDB Administrator authored
-
Aaron Merey authored
Trailing whitespace in the string of debuginfod URLs causes an out_of_range exception during the printing of URLs for the first use notice. To fix this, stop printing URLs when the substring to be printed consists only of whitespace. Also add first use notice testcases. Co-Authored-By:Pedro Alves <pedro@palves.net>
-
Lancelot SIX authored
Following a7e6a19e "gdb: testsuite: add new gdb_attach to check "attach" command", this commit proposes to introduce the gdb_spawn_attach_cmdline helper and use it in gdb.base/attach.exp. This helper starts GDB and adds the "--pid=$PID" argument. Also note that both the original and new implementation use gdb_spawn_with_cmdline_opts, which in the end uses default_gdb_spawn. This makes sure that we use $INTERNAL_GDBFLAGS, which by default already contain "-iex \"set height 0\" -iex \"set width 0\"". To avoid repetition of those arguments, gdb_spawn_attach_cmdline does not repeat those arguments. To maintain a behavior similat to what gdb.base/attach.exp used to do, gdb_spawn_attach_cmdline keeps the -quiet flag. Tested on x86_64-gnu-linux Change-Id: I1fdcdb71c86d9c5d34bb28fc86fac68bcec37358
-
- Apr 20, 2022
-
-
Tom Tromey authored
This turns symbol_symtab into a method on symbol. It also replaces symbol_set_symtab with a method.
-
Tom Tromey authored
This turns symbol_arch into a method on symbol.
-
Tom Tromey authored
This turns symbol_objfile into a method on symbol.
-
Tom Tromey authored
Symbols have an aclass_index method, but this isn't needed, because the aclass index isn't useful outside of the symbol implementation.
-