diff options
author | Jan Beulich <jbeulich@novell.com> | 2005-10-24 07:42:50 +0000 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2005-10-24 07:42:50 +0000 |
commit | 6a2375c6b276cd04a893f7d9a8cd87f3656cad65 (patch) | |
tree | d5599e1cbae544c8aa7d68843581c8a63d61b80c /gas/testsuite | |
parent | 5e0bd1769ddea4d4b75770e2b9bced019ecbca2d (diff) | |
download | gdb-6a2375c6b276cd04a893f7d9a8cd87f3656cad65.zip gdb-6a2375c6b276cd04a893f7d9a8cd87f3656cad65.tar.gz gdb-6a2375c6b276cd04a893f7d9a8cd87f3656cad65.tar.bz2 |
include/opcode/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* ia64.h (enum ia64_opnd): Move memory operand out of set of
indirect operands.
bfd/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* cpu-ia64-opc.c (elf64_ia64_operands): Move memory operand out of
set of indirect operands.
gas/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* config/tc-ia64.c (enum reg_symbol): Delete IND_MEM.
(dot_rot): Change type of num_* variables. Check for positive count.
(ia64_optimize_expr): Re-structure.
(md_operand): Check for general register.
gas/testsuite/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* gas/ia64/index.[sl]: New.
* gas/ia64/rotX.[sl]: New.
* gas/ia64/ia64.exp: Run new tests.
opcodes/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* ia64-asmtab.c: Regenerate.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/ia64.exp | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/index.l | 42 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/index.s | 63 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/rotX.l | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/rotX.s | 4 |
6 files changed, 122 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 53f85f6..dd4a891 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,11 @@ 2005-10-24 Jan Beulich <jbeulich@novell.com> + * gas/ia64/index.[sl]: New. + * gas/ia64/rotX.[sl]: New. + * gas/ia64/ia64.exp: Run new tests. + +2005-10-24 Jan Beulich <jbeulich@novell.com> + * gas/ia64/regs.pl: Also check tp alias of r13. * gas/ia64/regs.s: Regenerate. * gas/ia64/regs.d: Adjust. diff --git a/gas/testsuite/gas/ia64/ia64.exp b/gas/testsuite/gas/ia64/ia64.exp index a6c8646..0c75519 100644 --- a/gas/testsuite/gas/ia64/ia64.exp +++ b/gas/testsuite/gas/ia64/ia64.exp @@ -79,12 +79,14 @@ if [istarget "ia64-*"] then { run_list_test "alloc" "" run_dump_test "bundling" run_dump_test "forward" + run_list_test "index" "" run_list_test "label" "" run_list_test "last" "" run_list_test "no-fit" "" run_list_test "pound" "-al" run_list_test "proc" "-munwind-check=error" run_list_test "radix" "" + run_list_test "rotX" "" run_list_test "slot2" "" run_dump_test "strange" run_list_test "unwind-bad" "" diff --git a/gas/testsuite/gas/ia64/index.l b/gas/testsuite/gas/ia64/index.l new file mode 100644 index 0000000..41af9fd --- /dev/null +++ b/gas/testsuite/gas/ia64/index.l @@ -0,0 +1,42 @@ +.*: Assembler messages: +.*.s:6: Error: [Ii]ndex must be a general register +.*.s:7: Error: [Ii]ndex must be a general register +.*.s:8: Error: [Ii]ndex must be a general register +.*.s:9: Error: [Ii]ndex must be a general register +.*.s:13: Error: [Ii]ndirect register index must be a general register +.*.s:14: Error: [Ii]ndirect register index must be a general register +.*.s:15: Error: [Ii]ndirect register index must be a general register +.*.s:16: Error: [Ii]ndirect register index must be a general register +.*.s:20: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:21: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:22: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:23: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:24: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:25: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:27: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:28: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:29: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:30: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:31: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:32: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:37: Error: [Rr]otating register index must be a non-negative constant +.*.s:39: Error: [Ii]ndex out of range 0\.\.[[:digit:]]+ +.*.s:40: Error: [Rr]otating register index must be a non-negative constant +.*.s:41: Error: [Rr]otating register index must be a non-negative constant +.*.s:42: Error: [Rr]otating register index must be a non-negative constant +.*.s:44: Error: [Ii]ndirect register index must be a general register +.*.s:45: Error: [Ii]ndirect register index must be a general register +.*.s:46: Error: [Ii]ndirect register index must be a general register +.*.s:47: Error: [Ii]ndirect register index must be a general register +.*.s:51: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:52: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:53: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:54: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:55: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:56: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:58: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:59: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:60: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:61: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:62: Error: [Ii]ndex can only be applied to rotating or indirect registers +.*.s:63: Error: [Ii]ndex can only be applied to rotating or indirect registers diff --git a/gas/testsuite/gas/ia64/index.s b/gas/testsuite/gas/ia64/index.s new file mode 100644 index 0000000..0a5d9f1 --- /dev/null +++ b/gas/testsuite/gas/ia64/index.s @@ -0,0 +1,63 @@ +z == zero +zero == r0 + +.text +_start: + ld8 r2 = [ar.lc] + ld8 r3 = [1] + ld8 r4 = [-1] + ld8 r5 = [xyz] + ld8 r6 = [zero] + ld8 r7 = [z] + + mov r2 = cpuid[ar.lc] + mov r3 = cpuid[1] + mov r4 = cpuid[-1] + mov r5 = cpuid[xyz] + mov r6 = cpuid[zero] + mov r7 = cpuid[z] + + mov r2 = b0[ar.lc] + mov r3 = b0[1] + mov r4 = b0[-1] + mov r5 = b0[xyz] + mov r6 = b0[zero] + mov r7 = b0[z] + + mov r2 = xyz[ar.lc] + mov r3 = xyz[1] + mov r4 = xyz[-1] + mov r5 = xyz[xyz] + mov r6 = xyz[zero] + mov r7 = xyz[z] + +.regstk 0, 8, 0, 8 +.rotr reg[8] + + mov r2 = reg[ar.lc] + mov r3 = reg[1] + mov r4 = reg[-1] + mov r5 = reg[xyz] + mov r6 = reg[zero] + mov r7 = reg[z] + + mov r2 = cpuid[ar.lc] + mov r3 = cpuid[1] + mov r4 = cpuid[-1] + mov r5 = cpuid[xyz] + mov r6 = cpuid[zero] + mov r7 = cpuid[z] + + mov r2 = b0[ar.lc] + mov r3 = b0[1] + mov r4 = b0[-1] + mov r5 = b0[xyz] + mov r6 = b0[zero] + mov r7 = b0[z] + + mov r2 = xyz[ar.lc] + mov r3 = xyz[1] + mov r4 = xyz[-1] + mov r5 = xyz[xyz] + mov r6 = xyz[zero] + mov r7 = xyz[z] diff --git a/gas/testsuite/gas/ia64/rotX.l b/gas/testsuite/gas/ia64/rotX.l new file mode 100644 index 0000000..1159774 --- /dev/null +++ b/gas/testsuite/gas/ia64/rotX.l @@ -0,0 +1,5 @@ +.*: Assembler messages: +.*.s:[[:digit:]]+: Error: [Nn]umber of elements must be positive +.*.s:[[:digit:]]+: Error: [Nn]umber of elements must be positive +.*.s:[[:digit:]]+: Error: [Bb]ad or irreducible absolute expression +#pass diff --git a/gas/testsuite/gas/ia64/rotX.s b/gas/testsuite/gas/ia64/rotX.s new file mode 100644 index 0000000..48320f6 --- /dev/null +++ b/gas/testsuite/gas/ia64/rotX.s @@ -0,0 +1,4 @@ +.regstk 0, 8, 0, 8 +.rotr a[8], b[-8] +.rotp c[8], d[0] +.rotf e[8], f[x] |