# run_dump_test "sr"
# Host extension instructions
- test_template_insn host math mul64 20
- test_template_insn host math mulu64 21
+ run_dump_test "mul64"
+ test_template_insn host math asl 16
+ test_template_insn host math asr 18
+ test_template_insn host math lsr 17
+ test_template_insn host math ror 19
# Graphics extension instructions
- test_template_insn graphics math mul64 20
- test_template_insn graphics math mulu64 21
+ #run_dump_test "mul64" - .cpu field wrong
+ test_template_insn graphics math asl 16
+ test_template_insn graphics math asr 18
+ test_template_insn graphics math lsr 17
+ test_template_insn graphics math ror 19
test_template_insn graphics math padc 25
test_template_insn graphics math padd 24
test_template_insn graphics math pand 28
--- /dev/null
+#objdump: -dr
+#name: mul64
+
+# Test the mul64/mulu64 insn.
+
+.*: +file format elf32-.*arc
+
+Disassembly of section .text:
+00000000 a7e08400 mul64 r1,r2
+00000004 afe18800 mulu64 r3,r4
+00000008 a7e0fe00 mul64 r1,0
+0000000c a7ff8400 mul64 0,r2
+00000010 a7e0ffff mul64 r1,511
+00000014 a7ff85ff mul64 511,r2
+00000018 a7e0feff mul64 r1,255
+0000001c a7ff84ff mul64 255,r2
+00000020 a7e0ff00 mul64 r1,256
+00000024 a7ff8500 mul64 256,r2
+00000028 afe0fc00 mulu64 r1,256
+00000030 afff0400 mulu64 511,r2
+00000038 a7e0fc00 mul64 r1,256
+00000040 a7ff0400 mul64 -257,r2
+00000048 afe1fc00 mulu64 r3,512
+00000050 afe27fff mulu64 r4,511
+00000054 a7ff0a00 mul64 1111638594,r5
+0000005c a7ff7c00 mul64 305419896,305419896
+00000064 a7e07c00 mul64 r0,0
+ RELOC: 00000068 R_ARC_32 foo
+0000006c aff07c00 mulu64 r32,0
+ RELOC: 00000070 R_ARC_32 foo
+00000074 a7e00200 mul64 r0,r1
+00000078 a7e30e01 mul64.eq r6,r7
+0000007c afe61a02 mulu64.ne r12,r13
+00000080 a7e00300 mul64.f r0,r1
+00000084 a7e17a01 mul64.f r2,1
+00000088 a7fe8601 mul64.f 1,r3
+0000008c a7fe8800 mul64.f 0,r4
+00000090 afe2fd00 mulu64.f r5,512
+00000098 afe37d00 mulu64.f r6,512
+000000a0 afe39100 mulu64.f r7,r8
+000000a4 afe00301 mulu64.eq.f r0,r1
+000000a8 afe17d02 mulu64.ne.f r2,0
+000000b0 afff070b mulu64.lt.f 0,r3
+000000b8 afe27d09 mulu64.gt.f r4,512
+000000c0 afff0b0c mulu64.le.f 512,r5
+000000c8 afff7d0a mulu64.ge.f 512,512