mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 03:51:15 +08:00
Fix Nios II assembler self-test mode.
2014-04-22 Sandra Loosemore <sandra@codesourcery.com> gas/ * config/tc-nios2.c (nios2_consume_arg): Add case for 'E' to unbreak self-test mode. gas/testsuite/ * gas/nios2/selftest.s: New. * gas/nios2/selftest.d: New.
This commit is contained in:
parent
43c001c7d6
commit
fad16e308c
@ -2006,6 +2006,7 @@ nios2_consume_arg (nios2_insn_infoS *insn, char *argstr, const char *parsestr)
|
||||
as_bad (_("badly formed expression near %s"), argstr);
|
||||
break;
|
||||
case 'o':
|
||||
case 'E':
|
||||
break;
|
||||
default:
|
||||
BAD_CASE (*parsestr);
|
||||
|
18
gas/testsuite/gas/nios2/selftest.d
Normal file
18
gas/testsuite/gas/nios2/selftest.d
Normal file
@ -0,0 +1,18 @@
|
||||
#as: -r
|
||||
#objdump: -dr --prefix-addresses --show-raw-insn
|
||||
#name: NIOS2 selftest
|
||||
|
||||
# Test the assembler self-test mode on some instructions that
|
||||
# manipulate control registers. The purpose of this test is to make
|
||||
# sure the assembler doesn't choke, rather than to match the encodings
|
||||
# of the particular instructions in the test here.
|
||||
|
||||
.*: +file format elf32-littlenios2
|
||||
|
||||
|
||||
Disassembly of section .text:
|
||||
0+0000 <[^>]*> 1001703a wrctl status,r2
|
||||
0+0004 <[^>]*> 1001703a wrctl status,r2
|
||||
0+0008 <[^>]*> 1001707a wrctl estatus,r2
|
||||
0+000c <[^>]*> 1001707a wrctl estatus,r2
|
||||
#...
|
134
gas/testsuite/gas/nios2/selftest.s
Normal file
134
gas/testsuite/gas/nios2/selftest.s
Normal file
@ -0,0 +1,134 @@
|
||||
# Use self-test mode to verify that all the expected control register
|
||||
# names assemble correctly.
|
||||
|
||||
_start:
|
||||
wrctl ctl0, r2, 0x1001703a
|
||||
wrctl status, r2, 0x1001703a
|
||||
|
||||
wrctl ctl1, r2, 0x1001707a
|
||||
wrctl estatus, r2, 0x1001707a
|
||||
|
||||
wrctl ctl2, r2, 0x100170ba
|
||||
wrctl bstatus, r2, 0x100170ba
|
||||
|
||||
wrctl ctl3, r2, 0x100170fa
|
||||
wrctl ienable, r2, 0x100170fa
|
||||
|
||||
# wrctl ctl4, r2, 0x1001713a # write-only register
|
||||
# wrctl ipending, r2, 0x1001713a #
|
||||
|
||||
wrctl ctl5, r2, 0x1001717a
|
||||
wrctl cpuid, r2, 0x1001717a
|
||||
|
||||
wrctl ctl6, r2, 0x100171ba
|
||||
|
||||
wrctl ctl7, r2, 0x100171fa
|
||||
wrctl exception,r2, 0x100171fa
|
||||
|
||||
wrctl ctl8, r2, 0x1001723a
|
||||
wrctl pteaddr, r2, 0x1001723a
|
||||
|
||||
wrctl ctl9, r2, 0x1001727a
|
||||
wrctl tlbacc, r2, 0x1001727a
|
||||
|
||||
wrctl ctl10, r2, 0x100172ba
|
||||
wrctl tlbmisc, r2, 0x100172ba
|
||||
|
||||
wrctl ctl11, r2, 0x100172fa
|
||||
wrctl eccinj, r2, 0x100172fa
|
||||
|
||||
wrctl ctl12, r2, 0x1001733a
|
||||
wrctl badaddr, r2, 0x1001733a
|
||||
|
||||
wrctl ctl13, r2, 0x1001737a
|
||||
wrctl config, r2, 0x1001737a
|
||||
|
||||
wrctl ctl14, r2, 0x100173ba
|
||||
wrctl mpubase, r2, 0x100173ba
|
||||
|
||||
wrctl ctl15, r2, 0x100173fa
|
||||
wrctl mpuacc, r2, 0x100173fa
|
||||
|
||||
wrctl ctl16, r2, 0x1001743a
|
||||
wrctl ctl17, r2, 0x1001747a
|
||||
wrctl ctl18, r2, 0x100174ba
|
||||
wrctl ctl19, r2, 0x100174fa
|
||||
wrctl ctl20, r2, 0x1001753a
|
||||
wrctl ctl21, r2, 0x1001757a
|
||||
wrctl ctl22, r2, 0x100175ba
|
||||
wrctl ctl23, r2, 0x100175fa
|
||||
wrctl ctl24, r2, 0x1001763a
|
||||
wrctl ctl25, r2, 0x1001767a
|
||||
wrctl ctl26, r2, 0x100176ba
|
||||
wrctl ctl27, r2, 0x100176fa
|
||||
wrctl ctl28, r2, 0x1001773a
|
||||
wrctl ctl29, r2, 0x1001777a
|
||||
wrctl ctl30, r2, 0x100177ba
|
||||
wrctl ctl31, r2, 0x100177fa
|
||||
|
||||
|
||||
rdctl r2,ctl0, 0x0005303a
|
||||
rdctl r2,status, 0x0005303a
|
||||
|
||||
rdctl r2,ctl1, 0x0005307a
|
||||
rdctl r2,estatus, 0x0005307a
|
||||
|
||||
rdctl r2,ctl2, 0x000530ba
|
||||
rdctl r2,bstatus, 0x000530ba
|
||||
|
||||
rdctl r2,ctl3, 0x000530fa
|
||||
rdctl r2,ienable, 0x000530fa
|
||||
|
||||
rdctl r2,ctl4, 0x0005313a
|
||||
rdctl r2,ipending, 0x0005313a
|
||||
|
||||
rdctl r2,ctl5, 0x0005317a
|
||||
rdctl r2,cpuid, 0x0005317a
|
||||
|
||||
rdctl r2,ctl6, 0x000531ba
|
||||
|
||||
rdctl r2,ctl7, 0x000531fa
|
||||
rdctl r2,exception,0x000531fa
|
||||
|
||||
rdctl r2,ctl8, 0x0005323a
|
||||
rdctl r2,pteaddr, 0x0005323a
|
||||
|
||||
rdctl r2,ctl9, 0x0005327a
|
||||
rdctl r2,tlbacc, 0x0005327a
|
||||
|
||||
rdctl r2,ctl10, 0x000532ba
|
||||
rdctl r2,tlbmisc, 0x000532ba
|
||||
|
||||
rdctl r2,ctl11, 0x000532fa
|
||||
rdctl r2,eccinj, 0x000532fa
|
||||
|
||||
rdctl r2,ctl12, 0x0005333a
|
||||
rdctl r2,badaddr, 0x0005333a
|
||||
|
||||
rdctl r2,ctl13, 0x0005337a
|
||||
rdctl r2,config, 0x0005337a
|
||||
|
||||
rdctl r2,ctl14, 0x000533ba
|
||||
rdctl r2,mpubase, 0x000533ba
|
||||
|
||||
rdctl r2,ctl15, 0x000533fa
|
||||
rdctl r2,mpuacc, 0x000533fa
|
||||
|
||||
rdctl r2,ctl16, 0x0005343a
|
||||
rdctl r2,ctl17, 0x0005347a
|
||||
rdctl r2,ctl18, 0x000534ba
|
||||
rdctl r2,ctl19, 0x000534fa
|
||||
rdctl r2,ctl20, 0x0005353a
|
||||
rdctl r2,ctl21, 0x0005357a
|
||||
rdctl r2,ctl22, 0x000535ba
|
||||
rdctl r2,ctl23, 0x000535fa
|
||||
rdctl r2,ctl24, 0x0005363a
|
||||
rdctl r2,ctl25, 0x0005367a
|
||||
rdctl r2,ctl26, 0x000536ba
|
||||
rdctl r2,ctl27, 0x000536fa
|
||||
rdctl r2,ctl28, 0x0005373a
|
||||
rdctl r2,ctl29, 0x0005377a
|
||||
rdctl r2,ctl30, 0x000537ba
|
||||
rdctl r2,ctl31, 0x000537fa
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user