diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index dde62c57d4..ff91d8d3f1 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,18 @@ +2002-05-30 Tom Rix + + * gas/d10v/d10v.exp: Add -gstabs packing, sequence control + packing, warning, instruction packing, label, immediate and, + error tests. + * gas/d10v/instruction_packing-001.d - intruction_packing-010.d: + New tests. + * gas/d10v/control-001.d: New test. + * gas/d10v/warning-001.d - warning-019.d: New tests. + * gas/d10v/label-001.d: New test. + * gas/d10v/error-001.d - error-002.d : New tests. + * gas/d10v/immediate-001.d - immediate-007.d: New tests. + + * lib/gas-defs.exp (run_dump_test): Add error option. + 2002-05-28 Kuang Hwa Lin * gas/dlx: New directory: DLX gas testsuite diff --git a/gas/testsuite/gas/d10v/control-001.d b/gas/testsuite/gas/d10v/control-001.d new file mode 100644 index 0000000000..32c7c42164 --- /dev/null +++ b/gas/testsuite/gas/d10v/control-001.d @@ -0,0 +1,19 @@ +#objdump: -Dr +#source: control-001.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: 69 00 56 00 mvfc r0, psw -> mvtc r0, psw + 4: 69 01 56 20 mvfc r0, bpsw -> mvtc r0, bpsw + 8: 69 02 56 40 mvfc r0, pc -> mvtc r0, pc + c: 69 03 56 60 mvfc r0, bpc -> mvtc r0, bpc + 10: 69 07 56 e0 mvfc r0, rpt_c -> mvtc r0, rpt_c + 14: 69 08 57 00 mvfc r0, rpt_s -> mvtc r0, rpt_s + 18: 69 09 57 20 mvfc r0, rpt_e -> mvtc r0, rpt_e + 1c: 69 0a 57 40 mvfc r0, mod_s -> mvtc r0, mod_s + 20: 69 0b 57 60 mvfc r0, mod_e -> mvtc r0, mod_e + 24: 69 0e 57 c0 mvfc r0, iba -> mvtc r0, iba +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/control-001.s b/gas/testsuite/gas/d10v/control-001.s new file mode 100644 index 0000000000..dc32ca1094 --- /dev/null +++ b/gas/testsuite/gas/d10v/control-001.s @@ -0,0 +1,25 @@ + .text + .global foo +foo: + mvfc r0,cr0 + mvtc r0,psw ;; cr0=psw + mvfc r0,cr1 + mvtc r0,bpsw ;; cr1=bpsw + mvfc r0,cr2 + mvtc r0,pc ;; cr2=pc + mvfc r0,cr3; + mvtc r0,bpc ;; cr3=bpc + mvfc r0,cr7 + mvtc r0,rpt_c ;; cr7=rpt_c + mvfc r0,cr8 + mvtc r0,rpt_s ;; cr8=rpt_s + mvfc r0,cr9 + mvtc r0,rpt_e ;; cr9=rpt_e + mvfc r0,cr10 + mvtc r0,mod_s ;; cr10=mod_s + mvfc r0,cr11 + mvtc r0,mod_e ;; cr11=mod_e + mvfc r0,cr14 + mvtc r0,iba ;; cr14=iba + + diff --git a/gas/testsuite/gas/d10v/d10v.exp b/gas/testsuite/gas/d10v/d10v.exp index 43f278539c..6169ecf1aa 100644 --- a/gas/testsuite/gas/d10v/d10v.exp +++ b/gas/testsuite/gas/d10v/d10v.exp @@ -58,4 +58,45 @@ if {[istarget d10v-*-*]} { run_list_test "address-040" "" run_list_test "address-041" "" run_dump_test "instruction_packing" + run_dump_test "instruction_packing-001" + run_dump_test "instruction_packing-002" + run_dump_test "instruction_packing-003" + run_dump_test "instruction_packing-004" + run_dump_test "instruction_packing-005" + run_dump_test "instruction_packing-006" + run_dump_test "instruction_packing-007" + run_dump_test "instruction_packing-008" + run_dump_test "instruction_packing-009" + run_dump_test "instruction_packing-010" + run_dump_test "error-001" + run_dump_test "error-002" + run_dump_test "immediate-001" + run_dump_test "immediate-002" + run_dump_test "immediate-003" + run_dump_test "immediate-004" + run_dump_test "immediate-005" + run_dump_test "immediate-006" + run_dump_test "immediate-007" + run_dump_test "warning-001" + run_dump_test "warning-002" + run_dump_test "warning-003" + run_dump_test "warning-004" + run_dump_test "warning-005" + run_dump_test "warning-006" + run_dump_test "warning-007" + run_dump_test "warning-008" + run_dump_test "warning-009" + run_dump_test "warning-010" + run_dump_test "warning-011" + run_dump_test "warning-012" + run_dump_test "warning-013" + run_dump_test "warning-014" + run_dump_test "warning-015" + run_dump_test "warning-015" + run_dump_test "warning-016" + run_dump_test "warning-017" + run_dump_test "warning-018" + run_dump_test "warning-019" + run_dump_test "control-001" + run_dump_test "label-001" } diff --git a/gas/testsuite/gas/d10v/error-001.d b/gas/testsuite/gas/d10v/error-001.d new file mode 100644 index 0000000000..6998bb397c --- /dev/null +++ b/gas/testsuite/gas/d10v/error-001.d @@ -0,0 +1,12 @@ +#objdump: -D +#source: error-001.s + +# Test expect's dump_run_test baseline + +.*: +file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: 20 01 5e 00 mv r0, r1 || nop +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/error-001.s b/gas/testsuite/gas/d10v/error-001.s new file mode 100644 index 0000000000..76378e1f55 --- /dev/null +++ b/gas/testsuite/gas/d10v/error-001.s @@ -0,0 +1,9 @@ + ;; + ;; error-001.s + ;; Not really an error but a baseline for the expect function + ;; run_dump_test + + .text + .global foo +foo: + mv r0,r1 diff --git a/gas/testsuite/gas/d10v/error-002.d b/gas/testsuite/gas/d10v/error-002.d new file mode 100644 index 0000000000..fbb102ba4a --- /dev/null +++ b/gas/testsuite/gas/d10v/error-002.d @@ -0,0 +1,4 @@ +#source: error-002.s +#error: bad opcode or operands + +# Test expect's dump_run_test error option diff --git a/gas/testsuite/gas/d10v/error-002.s b/gas/testsuite/gas/d10v/error-002.s new file mode 100644 index 0000000000..5eafa9a9eb --- /dev/null +++ b/gas/testsuite/gas/d10v/error-002.s @@ -0,0 +1,9 @@ + ;; + ;; error-002.s + ;; Test new error feature of run_dump_test + ;; run_dump_test + + .text + .global foo +foo: + mv r0,0 diff --git a/gas/testsuite/gas/d10v/immediate-001.d b/gas/testsuite/gas/d10v/immediate-001.d new file mode 100644 index 0000000000..776db6bd15 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-001.d @@ -0,0 +1,25 @@ +#objdump: -Dr +#source: immediate-001.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 7f ff ldi.l r0, 0x7fff + 4: e0 00 ff ff ldi.l r0, -0x1 + 8: 41 0f 8c 1f addi r0, 0xf -> bclri r0, 0xf + c: 84 0f 8a 1f bseti r0, 0xf <- bnoti r0, 0xf + 10: a9 03 8e 1f rac r0, a0, 0x3 <- btsti r0, 0xf + 14: a1 03 d2 0d rachi r0, a0, 0x3 <- rac r0, a0, -0x2 + 18: 91 0f c2 0d slli r0, 0xf <- rachi r0, a0, -0x2 + 1c: 92 0f b3 1f srai r0, 0xf <- slli a1, 0xf + 20: 9a 0f b4 01 srai a0, 0xf <- srai a0, 0x0 + 24: 98 00 a0 1f srli a0, 0x0 <- srli r0, 0xf + 28: 80 00 b0 1f subi r0, 0x0 <- srli a0, 0xf + 2c: 40 0f df 1e subi r0, 0xf -> trap 0xf + 30: c7 00 7f ff tst0i r0, 0x7fff + 34: c7 00 ff ff tst0i r0, -0x1 + 38: cf 00 7f ff tst1i r0, 0x7fff + 3c: cf 00 ff ff tst1i r0, -0x1 +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/immediate-001.s b/gas/testsuite/gas/d10v/immediate-001.s new file mode 100644 index 0000000000..3be0e5caee --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-001.s @@ -0,0 +1,32 @@ + ;; ops with immediate args + + .text + .global foo +foo: + ldi r0,0x7fff + ldi r0,0xffff + addi r0,0xf + bclri r0,0xf + bnoti r0,0xf + bseti r0,0xf + btsti r0,0xf + rac r0,a0,3 + rac r0,a0,-2 + rachi r0,a0,3 + rachi r0,a0,-2 + slli r0,0xf + slli a1,0xf + srai r0,0xf + srai a0,0x10 + srai a0,0xf + srli r0,0xf + srli a0,0x10 + srli a0,0xf + subi r0,0x10 + subi r0,0xf + trap 0xf + tst0i r0,0x7fff + tst0i r0,0xffff + tst1i r0,0x7fff + tst1i r0,0xffff + diff --git a/gas/testsuite/gas/d10v/immediate-002.d b/gas/testsuite/gas/d10v/immediate-002.d new file mode 100644 index 0000000000..4a28a7d27b --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-002.d @@ -0,0 +1,10 @@ +#objdump: -Dr +#source: immediate-002.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 12 34 ldi.l r0, 0x1234 +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/immediate-002.s b/gas/testsuite/gas/d10v/immediate-002.s new file mode 100644 index 0000000000..6e68bcee3d --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-002.s @@ -0,0 +1,9 @@ + ;; ops with immediate args + + .set VALUE,0x1234 + .text + .global foo +foo: + ldi r0,VALUE + + diff --git a/gas/testsuite/gas/d10v/immediate-003.d b/gas/testsuite/gas/d10v/immediate-003.d new file mode 100644 index 0000000000..7635a6ba79 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-003.d @@ -0,0 +1,11 @@ +#objdump: -Dr +#source: immediate-003.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 00 00 ldi.l r0, 0x0 + 2: R_D10V_16 sym +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/immediate-003.s b/gas/testsuite/gas/d10v/immediate-003.s new file mode 100644 index 0000000000..52c9676534 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-003.s @@ -0,0 +1,8 @@ + ;; ops with immediate args + + .text + .global foo +foo: + ldi.l r0,sym + + diff --git a/gas/testsuite/gas/d10v/immediate-004.d b/gas/testsuite/gas/d10v/immediate-004.d new file mode 100644 index 0000000000..6d5ed59dd2 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-004.d @@ -0,0 +1,2 @@ +#source: immediate-004.s +#error : operand is not an immediate diff --git a/gas/testsuite/gas/d10v/immediate-004.s b/gas/testsuite/gas/d10v/immediate-004.s new file mode 100644 index 0000000000..8fae7489ce --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-004.s @@ -0,0 +1,8 @@ + ;; ops with immediate args + + .text + .global foo +foo: + btsti r3,bad_value + + diff --git a/gas/testsuite/gas/d10v/immediate-005.d b/gas/testsuite/gas/d10v/immediate-005.d new file mode 100644 index 0000000000..aae822cb56 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-005.d @@ -0,0 +1,2 @@ +#source: immediate-005.s +#error : operand is not an immediate diff --git a/gas/testsuite/gas/d10v/immediate-005.s b/gas/testsuite/gas/d10v/immediate-005.s new file mode 100644 index 0000000000..8d73f11ac5 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-005.s @@ -0,0 +1,7 @@ + ;; ops with immediate args + + .text + .global foo +foo: + rac r4,a0,bad_value + \ No newline at end of file diff --git a/gas/testsuite/gas/d10v/immediate-006.d b/gas/testsuite/gas/d10v/immediate-006.d new file mode 100644 index 0000000000..861d6169c4 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-006.d @@ -0,0 +1,20 @@ +#objdump: -Dr +#source: immediate-006.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 00 08 ldi.l r0, 0x8 + 2: R_D10V_16 .rodata +Disassembly of section .data: +Disassembly of section .rodata: + +00000000 : + 0: 6f 70 73 6f unknown -> unknown.long 0x6f70736f + 4: 6c 6f 70 00 unknown -> ldb r0, @r0 + +00000008 : + 8: 6d 6f 70 73 unknown -> unknown.long 0x6d6f7073 + c: 66 6c 6f 00 unknown -> unknown.long 0x666c6f00 diff --git a/gas/testsuite/gas/d10v/immediate-006.s b/gas/testsuite/gas/d10v/immediate-006.s new file mode 100644 index 0000000000..f029d009f4 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-006.s @@ -0,0 +1,14 @@ + ;; ops with immediate args + + .section .rodata +str0: + .string "opsolop" +str1: + .string "mopsflo" + + .text + .align 2 + .global foo +foo: + ldi r0,str1 + \ No newline at end of file diff --git a/gas/testsuite/gas/d10v/immediate-007.d b/gas/testsuite/gas/d10v/immediate-007.d new file mode 100644 index 0000000000..5fdccec496 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-007.d @@ -0,0 +1,14 @@ +#objdump: -Dr +#source: immediate-007.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: ef 02 00 05 repi 0x2, 14 + 4: 6f 00 5e 00 nop -> nop + 8: 6f 00 5e 00 nop -> nop + c: 6f 00 5e 00 nop -> nop + 10: 6f 00 5e 00 nop -> nop +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/immediate-007.s b/gas/testsuite/gas/d10v/immediate-007.s new file mode 100644 index 0000000000..dcf9504c76 --- /dev/null +++ b/gas/testsuite/gas/d10v/immediate-007.s @@ -0,0 +1,19 @@ + ;; ops with immediate args + + .text + .align 2 + .global foo + +foo: + repi 2,bar + + nop + nop + nop + nop + nop + nop + nop + nop +bar: + diff --git a/gas/testsuite/gas/d10v/instruction_packing-001.d b/gas/testsuite/gas/d10v/instruction_packing-001.d new file mode 100644 index 0000000000..7bea4368f6 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-001.d @@ -0,0 +1,25 @@ +#objdump: -D +#source: instruction_packing-001.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 10 30 00 ldi.l r1, 0x3000 + 4: 26 81 40 03 jl r1 || ldi.s r0, 0x1 + +00000008 : + 8: 2f 80 40 03 trap 0x0 || ldi.s r0, 0x1 + c: 24 ff c0 03 bl.s 8 || ldi.s r0, 0x1 + 10: 26 01 40 03 jmp r1 || ldi.s r0, 0x1 + 14: 2f f0 40 03 stop || ldi.s r0, 0x1 + 18: 2f e0 40 03 sleep || ldi.s r0, 0x1 + 1c: 2f c0 40 03 wait || ldi.s r0, 0x1 + +00000020 : + 20: 2f 90 40 03 dbt || ldi.s r0, 0x1 + 24: 24 7f c0 03 bra.s 20 || ldi.s r0, 0x1 + 28: 2f a0 40 03 rte || ldi.s r0, 0x1 + 2c: 20 01 de 00 ldi.s r0, 0x1 || nop +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/instruction_packing-001.s b/gas/testsuite/gas/d10v/instruction_packing-001.s new file mode 100644 index 0000000000..2acb21f4ae --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-001.s @@ -0,0 +1,29 @@ + .text + .align 2 +foo: + ldi r1,0x3000 + ldi r0, #1 + jl r1 +L0: + ldi r0, #1 + trap #0 + ldi r0, #1 + bl L0 + ldi r0, #1 + jmp r1 + ldi r0, #1 + stop + ldi r0, #1 + sleep + ldi r0, #1 + wait +L1: + ldi r0, #1 + dbt + ldi r0, #1 + bra L1 + ldi r0, #1 + rte + ldi r0, #1 + + diff --git a/gas/testsuite/gas/d10v/instruction_packing-002.d b/gas/testsuite/gas/d10v/instruction_packing-002.d new file mode 100644 index 0000000000..f4b410340f --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-002.d @@ -0,0 +1,18 @@ +#objdump: -Dr +#source: instruction_packing-002.s +#as: -W + +.*: file format elf32-d10v + +Disassembly of section .text: +Disassembly of section .data: +Disassembly of section s1: + +00000000 : + 0: 01 1b 5e 00 add r1, r11 || nop +Disassembly of section s2: + +00000000 : + 0: 01 2b 02 76 add r2, r11 || add r3, r11 + 4: 41 2b 02 76 add r2, r11 -> add r3, r11 + 8: 81 2b 02 76 add r2, r11 <- add r3, r11 diff --git a/gas/testsuite/gas/d10v/instruction_packing-002.s b/gas/testsuite/gas/d10v/instruction_packing-002.s new file mode 100644 index 0000000000..45c6023949 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-002.s @@ -0,0 +1,10 @@ + .section s1, "ax" +foo: + add r1,r11 + + .section s2, "ax" +bar: + add r2,r11 || add r3,r11 + add r2,r11 -> add r3,r11 + add r2,r11 <- add r3,r11 + diff --git a/gas/testsuite/gas/d10v/instruction_packing-003.d b/gas/testsuite/gas/d10v/instruction_packing-003.d new file mode 100644 index 0000000000..f25468a38f --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-003.d @@ -0,0 +1,17 @@ +#objdump: -Dr +#source: instruction_packing-003.s +#as: -W + +.*: file format elf32-d10v + +Disassembly of section .text: +Disassembly of section .data: +Disassembly of section s1: + +00000000 : + 0: 01 1b 5e 00 add r1, r11 || nop + 4: 01 2b 02 76 add r2, r11 || add r3, r11 +Disassembly of section s2: + +00000000 : + 0: 01 4b 02 b6 add r4, r11 || add r5, r11 diff --git a/gas/testsuite/gas/d10v/instruction_packing-003.s b/gas/testsuite/gas/d10v/instruction_packing-003.s new file mode 100644 index 0000000000..5a0a59ba9e --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-003.s @@ -0,0 +1,9 @@ + .section s1 ,"ax" +foo: + add r1,r11 + add r2,r11 || add r3,r11 + + .section s2 ,"ax" +bar: + add r4,r11 || add r5,r11 + diff --git a/gas/testsuite/gas/d10v/instruction_packing-004.d b/gas/testsuite/gas/d10v/instruction_packing-004.d new file mode 100644 index 0000000000..c760bedd94 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-004.d @@ -0,0 +1,15 @@ +#objdump: -Dr +#source: instruction_packing-004.s +#as: -W + +.*: file format elf32-d10v + +Disassembly of section .text: +Disassembly of section .data: +Disassembly of section s1: + +00000000 : + 0: 01 1b 5e 00 add r1, r11 || nop + +00000004 : + 4: 01 2b 02 76 add r2, r11 || add r3, r11 diff --git a/gas/testsuite/gas/d10v/instruction_packing-004.s b/gas/testsuite/gas/d10v/instruction_packing-004.s new file mode 100644 index 0000000000..7193660794 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-004.s @@ -0,0 +1,8 @@ + .section s1 ,"ax" +foo: + add r1,r11 + + .section s1 ,"ax" +bar: + add r2,r11 || add r3,r11 + diff --git a/gas/testsuite/gas/d10v/instruction_packing-005.d b/gas/testsuite/gas/d10v/instruction_packing-005.d new file mode 100644 index 0000000000..71ed975fc9 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-005.d @@ -0,0 +1,29 @@ +#objdump: -D +#source: instruction_packing-005.s +#as: -O + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: 36 df de 00 st r13, @-sp || nop + 4: f0 0e 00 00 ld r0, @\(0x0, r14\) + 8: e4 80 00 02 bl.l 10 + c: 70 df cc 1a ld r13, @sp\+ -> jmp r13 + +00000010 : + 10: 20 20 40 61 mv r2, r0 || ldi.s r3, 0x0 + 14: c6 12 80 00 and3 r1, r2, -0x8000 + 18: 01 31 a2 43 addi r3, 0x1 || slli r2, 0x1 + 1c: c2 10 80 00 cmpeqi.l r1, -0x8000 + 20: 60 02 0a 1f mv r0, r2 -> bnoti r0, 0xf + 24: 22 20 de 00 mvf0t r2, r0 || nop + 28: e3 30 00 08 cmpui r3, 0x8 + 2c: 65 fd 40 04 brf0t.s 14 -> mv r0, r2 + 30: 26 0d 5e 00 jmp r13 || nop +Disassembly of section .data: + +00000000 : + 0: Address 0x0 is out of bounds. + diff --git a/gas/testsuite/gas/d10v/instruction_packing-005.s b/gas/testsuite/gas/d10v/instruction_packing-005.s new file mode 100644 index 0000000000..0b2394edda --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-005.s @@ -0,0 +1,40 @@ + .globl in_data + .data + .align 1 + .type in_data,@object + .size in_data,2 +in_data: + .word 8192 + .text + .align 2 + .globl foo + .type foo,@function +foo: + st r13,@-sp + ld r0,@((in_data),r14) + bl func_a + ld r13,@sp+ + jmp r13 +.Lfe1: + .size foo,.Lfe1-foo + .align 2 + .globl func_a + .type func_a,@function +func_a: + mv r2,r0 + ldi r3,0 +.L7: + and3 r1,r2,-32768 + addi r3,1 + slli r2,1 + cmpeqi r1,-32768 + mv r0,r2 + bnoti r0,15 + mvf0t r2,r0 + cmpui r3,8 + brf0t .L7 + mv r0,r2 + jmp r13 + + + diff --git a/gas/testsuite/gas/d10v/instruction_packing-006.d b/gas/testsuite/gas/d10v/instruction_packing-006.d new file mode 100644 index 0000000000..b2166bdbe8 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-006.d @@ -0,0 +1,51 @@ +#objdump: -Dr +#source: instruction_packing-006.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: 24 81 5e 00 bl.s 8 || nop + 4: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000008 : + 8: 26 81 5e 00 jl r1 || nop + c: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000010 : + 10: 2f 81 5e 00 trap 0x1 || nop + 14: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000018 : + 18: 2f e0 5e 00 sleep || nop + 1c: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000020 : + 20: 2f c0 5e 00 wait || nop + 24: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000028 : + 28: 2f f0 5e 00 stop || nop + 2c: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000030 : + 30: 2f 90 5e 00 dbt || nop + 34: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000038 : + 38: 24 7e 5e 00 bra.s 28 || nop + 3c: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000040 : + 40: 26 01 5e 00 jmp r1 || nop + 44: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000048 : + 48: 2f a0 5e 00 rte || nop + 4c: 20 01 de 00 ldi.s r0, 0x1 || nop + +00000050 : + 50: 2f b0 5e 00 rtd || nop + 54: 20 01 de 00 ldi.s r0, 0x1 || nop +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/instruction_packing-006.s b/gas/testsuite/gas/d10v/instruction_packing-006.s new file mode 100644 index 0000000000..b82c011fe7 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-006.s @@ -0,0 +1,38 @@ + ;; sequence control operands need to be packed with nop's + ;; bl, jl, trap, sleep, stop, wait, dbt, bra, jmp, rte, rtd + + .text + .align 2 +test0: + bl.s test1 + ldi r0, #1 +test1: + jl r1 + ldi r0, #1 +test2: + trap #1 + ldi r0, #1 +test3: + sleep + ldi r0, #1 +test4: + wait + ldi r0, #1 +test5: + stop + ldi r0, #1 +test6: + dbt + ldi r0, #1 +test7: + bra.s test5 + ldi r0, #1 +test8: + jmp r1 + ldi r0, #1 +test9: + rte + ldi r0, #1 +test10: + rtd + ldi r0, #1 diff --git a/gas/testsuite/gas/d10v/instruction_packing-007.d b/gas/testsuite/gas/d10v/instruction_packing-007.d new file mode 100644 index 0000000000..f2cafe3e89 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-007.d @@ -0,0 +1,14 @@ +#objdump: -D +#source: instruction_packing-007.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 00 00 ldi.l r0, 0x0 + 4: e0 10 10 00 ldi.l r1, 0x1000 + 8: 60 22 c0 67 ldi.s r2, 0x2 -> ldi.s r3, 0x3 + c: e0 40 40 00 ldi.l r4, 0x4000 + 10: 60 55 cc 1a ldi.s r5, 0x5 -> jmp r13 +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/instruction_packing-007.s b/gas/testsuite/gas/d10v/instruction_packing-007.s new file mode 100644 index 0000000000..932580c6dc --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-007.s @@ -0,0 +1,18 @@ + ;; + ;; -gstabs --no-gstabs-packing inserts nop's so gdb will have the + ;; correct line number information. + ;; -gstabs and -gstabs --gstabs-packing disable inserting nops. + + .text + .global foo +foo: + ldi.l r0, #0x0000 + ldi.l r1, #0x1000 + + ldi.s r2, #0x0002 + ldi.s r3, #0x0003 + + ldi.l r4, #0x4000 + ldi.s r5, #0x0005 + + jmp r13 diff --git a/gas/testsuite/gas/d10v/instruction_packing-008.d b/gas/testsuite/gas/d10v/instruction_packing-008.d new file mode 100644 index 0000000000..4ab970882e --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-008.d @@ -0,0 +1,15 @@ +#objdump: -D +#source: instruction_packing-007.s +#as: -gstabs + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 00 00 ldi.l r0, 0x0 + 4: e0 10 10 00 ldi.l r1, 0x1000 + 8: 60 22 c0 67 ldi.s r2, 0x2 -> ldi.s r3, 0x3 + c: e0 40 40 00 ldi.l r4, 0x4000 + 10: 60 55 cc 1a ldi.s r5, 0x5 -> jmp r13 +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/instruction_packing-009.d b/gas/testsuite/gas/d10v/instruction_packing-009.d new file mode 100644 index 0000000000..f8113fa037 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-009.d @@ -0,0 +1,17 @@ +#objdump: -D +#source: instruction_packing-007.s +#as: -gstabs --no-gstabs-packing + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 00 00 ldi.l r0, 0x0 + 4: e0 10 10 00 ldi.l r1, 0x1000 + 8: 20 22 de 00 ldi.s r2, 0x2 || nop + c: 20 33 de 00 ldi.s r3, 0x3 || nop + 10: e0 40 40 00 ldi.l r4, 0x4000 + 14: 20 55 de 00 ldi.s r5, 0x5 || nop + 18: 26 0d 5e 00 jmp r13 || nop +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/instruction_packing-010.d b/gas/testsuite/gas/d10v/instruction_packing-010.d new file mode 100644 index 0000000000..cc428a9290 --- /dev/null +++ b/gas/testsuite/gas/d10v/instruction_packing-010.d @@ -0,0 +1,15 @@ +#objdump: -D +#source: instruction_packing-007.s +#as: -gstabs --no-gstabs-packing --gstabs-packing + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: e0 00 00 00 ldi.l r0, 0x0 + 4: e0 10 10 00 ldi.l r1, 0x1000 + 8: 60 22 c0 67 ldi.s r2, 0x2 -> ldi.s r3, 0x3 + c: e0 40 40 00 ldi.l r4, 0x4000 + 10: 60 55 cc 1a ldi.s r5, 0x5 -> jmp r13 +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/label-001.d b/gas/testsuite/gas/d10v/label-001.d new file mode 100644 index 0000000000..8e2087682e --- /dev/null +++ b/gas/testsuite/gas/d10v/label-001.d @@ -0,0 +1,1611 @@ +#objdump: -D +#source: label-001.s +#as: -O + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: 2f 00 5e 00 nop || nop + +00000004 : + 4: 2f 00 5e 00 nop || nop + +00000008 : + 8: 2f 00 5e 00 nop || nop + +0000000c : + c: 2f 00 5e 00 nop || nop + +00000010 : + 10: 2f 00 5e 00 nop || nop + +00000014 : + 14: 2f 00 5e 00 nop || nop + +00000018 : + 18: 2f 00 5e 00 nop || nop + +0000001c : + 1c: 2f 00 5e 00 nop || nop + +00000020 : + 20: 2f 00 5e 00 nop || nop + +00000024 : + 24: 2f 00 5e 00 nop || nop + +00000028 : + 28: 2f 00 5e 00 nop || nop + +0000002c : + 2c: 2f 00 5e 00 nop || nop + +00000030 : + 30: 2f 00 5e 00 nop || nop + +00000034 : + 34: 2f 00 5e 00 nop || nop + +00000038 : + 38: 2f 00 5e 00 nop || nop + +0000003c : + 3c: 2f 00 5e 00 nop || nop + +00000040 : + 40: 2f 00 5e 00 nop || nop + +00000044 : + 44: 2f 00 5e 00 nop || nop + +00000048 : + 48: 2f 00 5e 00 nop || nop + +0000004c : + 4c: 2f 00 5e 00 nop || nop + +00000050 : + 50: 2f 00 5e 00 nop || nop + +00000054 : + 54: 2f 00 5e 00 nop || nop + +00000058 : + 58: 2f 00 5e 00 nop || nop + +0000005c : + 5c: 2f 00 5e 00 nop || nop + +00000060 : + 60: 2f 00 5e 00 nop || nop + +00000064 : + 64: 2f 00 5e 00 nop || nop + +00000068 : + 68: 2f 00 5e 00 nop || nop + +0000006c : + 6c: 2f 00 5e 00 nop || nop + +00000070 : + 70: 2f 00 5e 00 nop || nop + +00000074 : + 74: 2f 00 5e 00 nop || nop + +00000078 : + 78: 2f 00 5e 00 nop || nop + +0000007c : + 7c: 2f 00 5e 00 nop || nop + +00000080 : + 80: 2f 00 5e 00 nop || nop + +00000084 : + 84: 2f 00 5e 00 nop || nop + +00000088 : + 88: 2f 00 5e 00 nop || nop + +0000008c : + 8c: 2f 00 5e 00 nop || nop + 90: 2f 00 5e 00 nop || nop + 94: e0 00 17 e0 ldi.l r0, 0x17e0 + 98: 2f 00 5e 00 nop || nop + 9c: 2f 00 5e 00 nop || nop + a0: 2f 00 5e 00 nop || nop + a4: 2f 00 5e 00 nop || nop + a8: 2f 00 5e 00 nop || nop + ac: 2f 00 5e 00 nop || nop + b0: 2f 00 5e 00 nop || nop + b4: 2f 00 5e 00 nop || nop + b8: 2f 00 5e 00 nop || nop + bc: 2f 00 5e 00 nop || nop + c0: 2f 00 5e 00 nop || nop + c4: 2f 00 5e 00 nop || nop + c8: 2f 00 5e 00 nop || nop + cc: 2f 00 5e 00 nop || nop + d0: 2f 00 5e 00 nop || nop + d4: 2f 00 5e 00 nop || nop + d8: 2f 00 5e 00 nop || nop + dc: 2f 00 5e 00 nop || nop + e0: 2f 00 5e 00 nop || nop + e4: 2f 00 5e 00 nop || nop + e8: 2f 00 5e 00 nop || nop + ec: 2f 00 5e 00 nop || nop + f0: 2f 00 5e 00 nop || nop + f4: 2f 00 5e 00 nop || nop + f8: 2f 00 5e 00 nop || nop + fc: 2f 00 5e 00 nop || nop + 100: 2f 00 5e 00 nop || nop + 104: 2f 00 5e 00 nop || nop + 108: 2f 00 5e 00 nop || nop + 10c: 2f 00 5e 00 nop || nop + 110: 2f 00 5e 00 nop || nop + 114: 2f 00 5e 00 nop || nop + 118: 2f 00 5e 00 nop || nop + 11c: 2f 00 5e 00 nop || nop + 120: 2f 00 5e 00 nop || nop + 124: 2f 00 5e 00 nop || nop + 128: 2f 00 5e 00 nop || nop + 12c: 2f 00 5e 00 nop || nop + 130: 2f 00 5e 00 nop || nop + 134: 2f 00 5e 00 nop || nop + 138: 2f 00 5e 00 nop || nop + 13c: 2f 00 5e 00 nop || nop + 140: 2f 00 5e 00 nop || nop + 144: 2f 00 5e 00 nop || nop + 148: 2f 00 5e 00 nop || nop + 14c: 2f 00 5e 00 nop || nop + 150: 2f 00 5e 00 nop || nop + 154: 2f 00 5e 00 nop || nop + 158: 2f 00 5e 00 nop || nop + 15c: 2f 00 5e 00 nop || nop + 160: 2f 00 5e 00 nop || nop + 164: 2f 00 5e 00 nop || nop + 168: 2f 00 5e 00 nop || nop + 16c: 2f 00 5e 00 nop || nop + 170: 2f 00 5e 00 nop || nop + 174: 2f 00 5e 00 nop || nop + 178: 2f 00 5e 00 nop || nop + 17c: 2f 00 5e 00 nop || nop + 180: 2f 00 5e 00 nop || nop + 184: 2f 00 5e 00 nop || nop + 188: 2f 00 5e 00 nop || nop + 18c: 2f 00 5e 00 nop || nop + 190: 2f 00 5e 00 nop || nop + 194: 2f 00 5e 00 nop || nop + 198: 2f 00 5e 00 nop || nop + 19c: 2f 00 5e 00 nop || nop + 1a0: 2f 00 5e 00 nop || nop + 1a4: 2f 00 5e 00 nop || nop + 1a8: 2f 00 5e 00 nop || nop + 1ac: 2f 00 5e 00 nop || nop + 1b0: 2f 00 5e 00 nop || nop + 1b4: 2f 00 5e 00 nop || nop + 1b8: 2f 00 5e 00 nop || nop + 1bc: 2f 00 5e 00 nop || nop + 1c0: 2f 00 5e 00 nop || nop + 1c4: 2f 00 5e 00 nop || nop + 1c8: 2f 00 5e 00 nop || nop + 1cc: 2f 00 5e 00 nop || nop + 1d0: 2f 00 5e 00 nop || nop + 1d4: 2f 00 5e 00 nop || nop + 1d8: 2f 00 5e 00 nop || nop + 1dc: 2f 00 5e 00 nop || nop + 1e0: 2f 00 5e 00 nop || nop + 1e4: 2f 00 5e 00 nop || nop + 1e8: 2f 00 5e 00 nop || nop + 1ec: 2f 00 5e 00 nop || nop + 1f0: 2f 00 5e 00 nop || nop + 1f4: 2f 00 5e 00 nop || nop + 1f8: 2f 00 5e 00 nop || nop + 1fc: 2f 00 5e 00 nop || nop + 200: 2f 00 5e 00 nop || nop + 204: 2f 00 5e 00 nop || nop + 208: 2f 00 5e 00 nop || nop + 20c: 2f 00 5e 00 nop || nop + 210: 2f 00 5e 00 nop || nop + 214: 2f 00 5e 00 nop || nop + 218: 2f 00 5e 00 nop || nop + 21c: 2f 00 5e 00 nop || nop + 220: 2f 00 5e 00 nop || nop + 224: 2f 00 5e 00 nop || nop + 228: 2f 00 5e 00 nop || nop + 22c: 2f 00 5e 00 nop || nop + 230: 2f 00 5e 00 nop || nop + 234: 2f 00 5e 00 nop || nop + 238: 2f 00 5e 00 nop || nop + 23c: 2f 00 5e 00 nop || nop + 240: 2f 00 5e 00 nop || nop + 244: 2f 00 5e 00 nop || nop + 248: 2f 00 5e 00 nop || nop + 24c: 2f 00 5e 00 nop || nop + 250: 2f 00 5e 00 nop || nop + 254: 2f 00 5e 00 nop || nop + 258: 2f 00 5e 00 nop || nop + 25c: 2f 00 5e 00 nop || nop + 260: 2f 00 5e 00 nop || nop + 264: 2f 00 5e 00 nop || nop + 268: 2f 00 5e 00 nop || nop + 26c: 2f 00 5e 00 nop || nop + 270: 2f 00 5e 00 nop || nop + 274: 2f 00 5e 00 nop || nop + 278: 2f 00 5e 00 nop || nop + 27c: 2f 00 5e 00 nop || nop + 280: 2f 00 5e 00 nop || nop + 284: 2f 00 5e 00 nop || nop + 288: 2f 00 5e 00 nop || nop + 28c: 2f 00 5e 00 nop || nop + 290: 2f 00 5e 00 nop || nop + 294: 2f 00 5e 00 nop || nop + 298: 2f 00 5e 00 nop || nop + 29c: 2f 00 5e 00 nop || nop + 2a0: 2f 00 5e 00 nop || nop + 2a4: 2f 00 5e 00 nop || nop + 2a8: 2f 00 5e 00 nop || nop + 2ac: 2f 00 5e 00 nop || nop + 2b0: 2f 00 5e 00 nop || nop + 2b4: 2f 00 5e 00 nop || nop + 2b8: 2f 00 5e 00 nop || nop + 2bc: 2f 00 5e 00 nop || nop + 2c0: 2f 00 5e 00 nop || nop + 2c4: 2f 00 5e 00 nop || nop + 2c8: 2f 00 5e 00 nop || nop + 2cc: 2f 00 5e 00 nop || nop + 2d0: 2f 00 5e 00 nop || nop + 2d4: 2f 00 5e 00 nop || nop + 2d8: 2f 00 5e 00 nop || nop + 2dc: 2f 00 5e 00 nop || nop + 2e0: 2f 00 5e 00 nop || nop + 2e4: 2f 00 5e 00 nop || nop + 2e8: 2f 00 5e 00 nop || nop + 2ec: 2f 00 5e 00 nop || nop + 2f0: 2f 00 5e 00 nop || nop + 2f4: 2f 00 5e 00 nop || nop + 2f8: 2f 00 5e 00 nop || nop + 2fc: 2f 00 5e 00 nop || nop + 300: 2f 00 5e 00 nop || nop + 304: 2f 00 5e 00 nop || nop + 308: 2f 00 5e 00 nop || nop + 30c: 2f 00 5e 00 nop || nop + 310: 2f 00 5e 00 nop || nop + 314: 2f 00 5e 00 nop || nop + 318: 2f 00 5e 00 nop || nop + 31c: 2f 00 5e 00 nop || nop + 320: 2f 00 5e 00 nop || nop + 324: 2f 00 5e 00 nop || nop + 328: 2f 00 5e 00 nop || nop + 32c: 2f 00 5e 00 nop || nop + 330: 2f 00 5e 00 nop || nop + 334: 2f 00 5e 00 nop || nop + 338: 2f 00 5e 00 nop || nop + 33c: 2f 00 5e 00 nop || nop + 340: 2f 00 5e 00 nop || nop + 344: 2f 00 5e 00 nop || nop + 348: 2f 00 5e 00 nop || nop + 34c: 2f 00 5e 00 nop || nop + 350: 2f 00 5e 00 nop || nop + 354: 2f 00 5e 00 nop || nop + 358: 2f 00 5e 00 nop || nop + 35c: 2f 00 5e 00 nop || nop + 360: 2f 00 5e 00 nop || nop + 364: 2f 00 5e 00 nop || nop + 368: 2f 00 5e 00 nop || nop + 36c: 2f 00 5e 00 nop || nop + 370: 2f 00 5e 00 nop || nop + 374: 2f 00 5e 00 nop || nop + 378: 2f 00 5e 00 nop || nop + 37c: 2f 00 5e 00 nop || nop + 380: 2f 00 5e 00 nop || nop + 384: 2f 00 5e 00 nop || nop + 388: 2f 00 5e 00 nop || nop + 38c: 2f 00 5e 00 nop || nop + 390: 2f 00 5e 00 nop || nop + 394: 2f 00 5e 00 nop || nop + 398: 2f 00 5e 00 nop || nop + 39c: 2f 00 5e 00 nop || nop + 3a0: 2f 00 5e 00 nop || nop + 3a4: 2f 00 5e 00 nop || nop + 3a8: 2f 00 5e 00 nop || nop + 3ac: 2f 00 5e 00 nop || nop + 3b0: 2f 00 5e 00 nop || nop + 3b4: 2f 00 5e 00 nop || nop + 3b8: 2f 00 5e 00 nop || nop + 3bc: 2f 00 5e 00 nop || nop + 3c0: 2f 00 5e 00 nop || nop + 3c4: 2f 00 5e 00 nop || nop + 3c8: 2f 00 5e 00 nop || nop + 3cc: 2f 00 5e 00 nop || nop + 3d0: 2f 00 5e 00 nop || nop + 3d4: 2f 00 5e 00 nop || nop + 3d8: 2f 00 5e 00 nop || nop + 3dc: 2f 00 5e 00 nop || nop + 3e0: 2f 00 5e 00 nop || nop + 3e4: 2f 00 5e 00 nop || nop + 3e8: 2f 00 5e 00 nop || nop + 3ec: 2f 00 5e 00 nop || nop + 3f0: 2f 00 5e 00 nop || nop + 3f4: 2f 00 5e 00 nop || nop + 3f8: 2f 00 5e 00 nop || nop + 3fc: 2f 00 5e 00 nop || nop + 400: 2f 00 5e 00 nop || nop + 404: 2f 00 5e 00 nop || nop + 408: 2f 00 5e 00 nop || nop + 40c: 2f 00 5e 00 nop || nop + 410: 2f 00 5e 00 nop || nop + 414: 2f 00 5e 00 nop || nop + 418: 2f 00 5e 00 nop || nop + 41c: 2f 00 5e 00 nop || nop + 420: 2f 00 5e 00 nop || nop + 424: 2f 00 5e 00 nop || nop + 428: 2f 00 5e 00 nop || nop + 42c: 2f 00 5e 00 nop || nop + 430: 2f 00 5e 00 nop || nop + 434: 2f 00 5e 00 nop || nop + 438: 2f 00 5e 00 nop || nop + 43c: 2f 00 5e 00 nop || nop + 440: 2f 00 5e 00 nop || nop + 444: 2f 00 5e 00 nop || nop + 448: 2f 00 5e 00 nop || nop + 44c: 2f 00 5e 00 nop || nop + 450: 2f 00 5e 00 nop || nop + 454: 2f 00 5e 00 nop || nop + 458: 2f 00 5e 00 nop || nop + 45c: 2f 00 5e 00 nop || nop + 460: 2f 00 5e 00 nop || nop + 464: 2f 00 5e 00 nop || nop + 468: 2f 00 5e 00 nop || nop + 46c: 2f 00 5e 00 nop || nop + 470: 2f 00 5e 00 nop || nop + 474: 2f 00 5e 00 nop || nop + 478: 2f 00 5e 00 nop || nop + 47c: 2f 00 5e 00 nop || nop + 480: 2f 00 5e 00 nop || nop + 484: 2f 00 5e 00 nop || nop + 488: 2f 00 5e 00 nop || nop + 48c: 2f 00 5e 00 nop || nop + 490: 2f 00 5e 00 nop || nop + 494: 2f 00 5e 00 nop || nop + 498: 2f 00 5e 00 nop || nop + 49c: 2f 00 5e 00 nop || nop + 4a0: 2f 00 5e 00 nop || nop + 4a4: 2f 00 5e 00 nop || nop + 4a8: 2f 00 5e 00 nop || nop + 4ac: 2f 00 5e 00 nop || nop + 4b0: 2f 00 5e 00 nop || nop + 4b4: 2f 00 5e 00 nop || nop + 4b8: 2f 00 5e 00 nop || nop + 4bc: 2f 00 5e 00 nop || nop + 4c0: 2f 00 5e 00 nop || nop + 4c4: 2f 00 5e 00 nop || nop + 4c8: 2f 00 5e 00 nop || nop + 4cc: 2f 00 5e 00 nop || nop + 4d0: 2f 00 5e 00 nop || nop + 4d4: 2f 00 5e 00 nop || nop + 4d8: 2f 00 5e 00 nop || nop + 4dc: 2f 00 5e 00 nop || nop + 4e0: 2f 00 5e 00 nop || nop + 4e4: 2f 00 5e 00 nop || nop + 4e8: 2f 00 5e 00 nop || nop + 4ec: 2f 00 5e 00 nop || nop + 4f0: 2f 00 5e 00 nop || nop + 4f4: 2f 00 5e 00 nop || nop + 4f8: 2f 00 5e 00 nop || nop + 4fc: 2f 00 5e 00 nop || nop + 500: 2f 00 5e 00 nop || nop + 504: 2f 00 5e 00 nop || nop + 508: 2f 00 5e 00 nop || nop + 50c: 2f 00 5e 00 nop || nop + 510: 2f 00 5e 00 nop || nop + 514: 2f 00 5e 00 nop || nop + 518: 2f 00 5e 00 nop || nop + 51c: 2f 00 5e 00 nop || nop + 520: 2f 00 5e 00 nop || nop + 524: 2f 00 5e 00 nop || nop + 528: 2f 00 5e 00 nop || nop + 52c: 2f 00 5e 00 nop || nop + 530: 2f 00 5e 00 nop || nop + 534: 2f 00 5e 00 nop || nop + 538: 2f 00 5e 00 nop || nop + 53c: 2f 00 5e 00 nop || nop + 540: 2f 00 5e 00 nop || nop + 544: 2f 00 5e 00 nop || nop + 548: 2f 00 5e 00 nop || nop + 54c: 2f 00 5e 00 nop || nop + 550: 2f 00 5e 00 nop || nop + 554: 2f 00 5e 00 nop || nop + 558: 2f 00 5e 00 nop || nop + 55c: 2f 00 5e 00 nop || nop + 560: 2f 00 5e 00 nop || nop + 564: 2f 00 5e 00 nop || nop + 568: 2f 00 5e 00 nop || nop + 56c: 2f 00 5e 00 nop || nop + 570: 2f 00 5e 00 nop || nop + 574: 2f 00 5e 00 nop || nop + 578: 2f 00 5e 00 nop || nop + 57c: 2f 00 5e 00 nop || nop + 580: 2f 00 5e 00 nop || nop + 584: 2f 00 5e 00 nop || nop + 588: 2f 00 5e 00 nop || nop + 58c: 2f 00 5e 00 nop || nop + 590: 2f 00 5e 00 nop || nop + 594: 2f 00 5e 00 nop || nop + 598: 2f 00 5e 00 nop || nop + 59c: 2f 00 5e 00 nop || nop + 5a0: 2f 00 5e 00 nop || nop + 5a4: 2f 00 5e 00 nop || nop + 5a8: 2f 00 5e 00 nop || nop + 5ac: 2f 00 5e 00 nop || nop + 5b0: 2f 00 5e 00 nop || nop + 5b4: 2f 00 5e 00 nop || nop + 5b8: 2f 00 5e 00 nop || nop + 5bc: 2f 00 5e 00 nop || nop + 5c0: 2f 00 5e 00 nop || nop + 5c4: 2f 00 5e 00 nop || nop + 5c8: 2f 00 5e 00 nop || nop + 5cc: 2f 00 5e 00 nop || nop + 5d0: 2f 00 5e 00 nop || nop + 5d4: 2f 00 5e 00 nop || nop + 5d8: 2f 00 5e 00 nop || nop + 5dc: 2f 00 5e 00 nop || nop + 5e0: 2f 00 5e 00 nop || nop + 5e4: 2f 00 5e 00 nop || nop + 5e8: 2f 00 5e 00 nop || nop + 5ec: 2f 00 5e 00 nop || nop + 5f0: 2f 00 5e 00 nop || nop + 5f4: 2f 00 5e 00 nop || nop + 5f8: 2f 00 5e 00 nop || nop + 5fc: 2f 00 5e 00 nop || nop + 600: 2f 00 5e 00 nop || nop + 604: 2f 00 5e 00 nop || nop + 608: 2f 00 5e 00 nop || nop + 60c: 2f 00 5e 00 nop || nop + 610: 2f 00 5e 00 nop || nop + 614: 2f 00 5e 00 nop || nop + 618: 2f 00 5e 00 nop || nop + 61c: 2f 00 5e 00 nop || nop + 620: 2f 00 5e 00 nop || nop + 624: 2f 00 5e 00 nop || nop + 628: 2f 00 5e 00 nop || nop + 62c: 2f 00 5e 00 nop || nop + 630: 2f 00 5e 00 nop || nop + 634: 2f 00 5e 00 nop || nop + 638: 2f 00 5e 00 nop || nop + 63c: 2f 00 5e 00 nop || nop + 640: 2f 00 5e 00 nop || nop + 644: 2f 00 5e 00 nop || nop + 648: 2f 00 5e 00 nop || nop + 64c: 2f 00 5e 00 nop || nop + 650: 2f 00 5e 00 nop || nop + 654: 2f 00 5e 00 nop || nop + 658: 2f 00 5e 00 nop || nop + 65c: 2f 00 5e 00 nop || nop + 660: 2f 00 5e 00 nop || nop + 664: 2f 00 5e 00 nop || nop + 668: 2f 00 5e 00 nop || nop + 66c: 2f 00 5e 00 nop || nop + 670: 2f 00 5e 00 nop || nop + 674: 2f 00 5e 00 nop || nop + 678: 2f 00 5e 00 nop || nop + 67c: 2f 00 5e 00 nop || nop + 680: 2f 00 5e 00 nop || nop + 684: 2f 00 5e 00 nop || nop + 688: 2f 00 5e 00 nop || nop + 68c: 2f 00 5e 00 nop || nop + 690: 2f 00 5e 00 nop || nop + 694: 2f 00 5e 00 nop || nop + 698: 2f 00 5e 00 nop || nop + 69c: 2f 00 5e 00 nop || nop + 6a0: 2f 00 5e 00 nop || nop + 6a4: 2f 00 5e 00 nop || nop + 6a8: 2f 00 5e 00 nop || nop + 6ac: 2f 00 5e 00 nop || nop + 6b0: 2f 00 5e 00 nop || nop + 6b4: 2f 00 5e 00 nop || nop + 6b8: 2f 00 5e 00 nop || nop + 6bc: 2f 00 5e 00 nop || nop + 6c0: 2f 00 5e 00 nop || nop + 6c4: 2f 00 5e 00 nop || nop + 6c8: 2f 00 5e 00 nop || nop + 6cc: 2f 00 5e 00 nop || nop + 6d0: 2f 00 5e 00 nop || nop + 6d4: 2f 00 5e 00 nop || nop + 6d8: 2f 00 5e 00 nop || nop + 6dc: 2f 00 5e 00 nop || nop + 6e0: 2f 00 5e 00 nop || nop + 6e4: 2f 00 5e 00 nop || nop + 6e8: 2f 00 5e 00 nop || nop + 6ec: 2f 00 5e 00 nop || nop + 6f0: 2f 00 5e 00 nop || nop + 6f4: 2f 00 5e 00 nop || nop + 6f8: 2f 00 5e 00 nop || nop + 6fc: 2f 00 5e 00 nop || nop + 700: 2f 00 5e 00 nop || nop + 704: 2f 00 5e 00 nop || nop + 708: 2f 00 5e 00 nop || nop + 70c: 2f 00 5e 00 nop || nop + 710: 2f 00 5e 00 nop || nop + 714: 2f 00 5e 00 nop || nop + 718: 2f 00 5e 00 nop || nop + 71c: 2f 00 5e 00 nop || nop + 720: 2f 00 5e 00 nop || nop + 724: 2f 00 5e 00 nop || nop + 728: 2f 00 5e 00 nop || nop + 72c: 2f 00 5e 00 nop || nop + 730: 2f 00 5e 00 nop || nop + 734: 2f 00 5e 00 nop || nop + 738: 2f 00 5e 00 nop || nop + 73c: 2f 00 5e 00 nop || nop + 740: 2f 00 5e 00 nop || nop + 744: 2f 00 5e 00 nop || nop + 748: 2f 00 5e 00 nop || nop + 74c: 2f 00 5e 00 nop || nop + 750: 2f 00 5e 00 nop || nop + 754: 2f 00 5e 00 nop || nop + 758: 2f 00 5e 00 nop || nop + 75c: 2f 00 5e 00 nop || nop + 760: 2f 00 5e 00 nop || nop + 764: 2f 00 5e 00 nop || nop + 768: 2f 00 5e 00 nop || nop + 76c: 2f 00 5e 00 nop || nop + 770: 2f 00 5e 00 nop || nop + 774: 2f 00 5e 00 nop || nop + 778: 2f 00 5e 00 nop || nop + 77c: 2f 00 5e 00 nop || nop + 780: 2f 00 5e 00 nop || nop + 784: 2f 00 5e 00 nop || nop + 788: 2f 00 5e 00 nop || nop + 78c: 2f 00 5e 00 nop || nop + 790: 2f 00 5e 00 nop || nop + 794: 2f 00 5e 00 nop || nop + 798: 2f 00 5e 00 nop || nop + 79c: 2f 00 5e 00 nop || nop + 7a0: 2f 00 5e 00 nop || nop + 7a4: 2f 00 5e 00 nop || nop + 7a8: 2f 00 5e 00 nop || nop + 7ac: 2f 00 5e 00 nop || nop + 7b0: 2f 00 5e 00 nop || nop + 7b4: 2f 00 5e 00 nop || nop + 7b8: 2f 00 5e 00 nop || nop + 7bc: 2f 00 5e 00 nop || nop + 7c0: 2f 00 5e 00 nop || nop + 7c4: 2f 00 5e 00 nop || nop + 7c8: 2f 00 5e 00 nop || nop + 7cc: 2f 00 5e 00 nop || nop + 7d0: 2f 00 5e 00 nop || nop + 7d4: 2f 00 5e 00 nop || nop + 7d8: 2f 00 5e 00 nop || nop + 7dc: 2f 00 5e 00 nop || nop + 7e0: 2f 00 5e 00 nop || nop + 7e4: 2f 00 5e 00 nop || nop + 7e8: 2f 00 5e 00 nop || nop + 7ec: 2f 00 5e 00 nop || nop + 7f0: 2f 00 5e 00 nop || nop + 7f4: 2f 00 5e 00 nop || nop + 7f8: 2f 00 5e 00 nop || nop + 7fc: 2f 00 5e 00 nop || nop + 800: 2f 00 5e 00 nop || nop + 804: 2f 00 5e 00 nop || nop + 808: 2f 00 5e 00 nop || nop + 80c: 2f 00 5e 00 nop || nop + 810: 2f 00 5e 00 nop || nop + 814: 2f 00 5e 00 nop || nop + 818: 2f 00 5e 00 nop || nop + 81c: 2f 00 5e 00 nop || nop + 820: 2f 00 5e 00 nop || nop + 824: 2f 00 5e 00 nop || nop + 828: 2f 00 5e 00 nop || nop + 82c: 2f 00 5e 00 nop || nop + 830: 2f 00 5e 00 nop || nop + 834: 2f 00 5e 00 nop || nop + 838: 2f 00 5e 00 nop || nop + 83c: 2f 00 5e 00 nop || nop + 840: 2f 00 5e 00 nop || nop + 844: 2f 00 5e 00 nop || nop + 848: 2f 00 5e 00 nop || nop + 84c: 2f 00 5e 00 nop || nop + 850: 2f 00 5e 00 nop || nop + 854: 2f 00 5e 00 nop || nop + 858: 2f 00 5e 00 nop || nop + 85c: 2f 00 5e 00 nop || nop + 860: 2f 00 5e 00 nop || nop + 864: 2f 00 5e 00 nop || nop + 868: 2f 00 5e 00 nop || nop + 86c: 2f 00 5e 00 nop || nop + 870: 2f 00 5e 00 nop || nop + 874: 2f 00 5e 00 nop || nop + 878: 2f 00 5e 00 nop || nop + 87c: 2f 00 5e 00 nop || nop + 880: 2f 00 5e 00 nop || nop + 884: 2f 00 5e 00 nop || nop + 888: 2f 00 5e 00 nop || nop + 88c: 2f 00 5e 00 nop || nop + 890: 2f 00 5e 00 nop || nop + 894: 2f 00 5e 00 nop || nop + 898: 2f 00 5e 00 nop || nop + 89c: 2f 00 5e 00 nop || nop + 8a0: 2f 00 5e 00 nop || nop + 8a4: 2f 00 5e 00 nop || nop + 8a8: 2f 00 5e 00 nop || nop + 8ac: 2f 00 5e 00 nop || nop + 8b0: 2f 00 5e 00 nop || nop + 8b4: 2f 00 5e 00 nop || nop + 8b8: 2f 00 5e 00 nop || nop + 8bc: 2f 00 5e 00 nop || nop + 8c0: 2f 00 5e 00 nop || nop + 8c4: 2f 00 5e 00 nop || nop + 8c8: 2f 00 5e 00 nop || nop + 8cc: 2f 00 5e 00 nop || nop + 8d0: 2f 00 5e 00 nop || nop + 8d4: 2f 00 5e 00 nop || nop + 8d8: 2f 00 5e 00 nop || nop + 8dc: 2f 00 5e 00 nop || nop + 8e0: 2f 00 5e 00 nop || nop + 8e4: 2f 00 5e 00 nop || nop + 8e8: 2f 00 5e 00 nop || nop + 8ec: 2f 00 5e 00 nop || nop + 8f0: 2f 00 5e 00 nop || nop + 8f4: 2f 00 5e 00 nop || nop + 8f8: 2f 00 5e 00 nop || nop + 8fc: 2f 00 5e 00 nop || nop + 900: 2f 00 5e 00 nop || nop + 904: 2f 00 5e 00 nop || nop + 908: 2f 00 5e 00 nop || nop + 90c: 2f 00 5e 00 nop || nop + 910: 2f 00 5e 00 nop || nop + 914: 2f 00 5e 00 nop || nop + 918: 2f 00 5e 00 nop || nop + 91c: 2f 00 5e 00 nop || nop + 920: 2f 00 5e 00 nop || nop + 924: 2f 00 5e 00 nop || nop + 928: 2f 00 5e 00 nop || nop + 92c: 2f 00 5e 00 nop || nop + 930: 2f 00 5e 00 nop || nop + 934: 2f 00 5e 00 nop || nop + 938: 2f 00 5e 00 nop || nop + 93c: 2f 00 5e 00 nop || nop + 940: 2f 00 5e 00 nop || nop + 944: 2f 00 5e 00 nop || nop + 948: 2f 00 5e 00 nop || nop + 94c: 2f 00 5e 00 nop || nop + 950: 2f 00 5e 00 nop || nop + 954: 2f 00 5e 00 nop || nop + 958: 2f 00 5e 00 nop || nop + 95c: 2f 00 5e 00 nop || nop + 960: 2f 00 5e 00 nop || nop + 964: 2f 00 5e 00 nop || nop + 968: 2f 00 5e 00 nop || nop + 96c: 2f 00 5e 00 nop || nop + 970: 2f 00 5e 00 nop || nop + 974: 2f 00 5e 00 nop || nop + 978: 2f 00 5e 00 nop || nop + 97c: 2f 00 5e 00 nop || nop + 980: 2f 00 5e 00 nop || nop + 984: 2f 00 5e 00 nop || nop + 988: 2f 00 5e 00 nop || nop + 98c: 2f 00 5e 00 nop || nop + 990: 2f 00 5e 00 nop || nop + 994: 2f 00 5e 00 nop || nop + 998: 2f 00 5e 00 nop || nop + 99c: 2f 00 5e 00 nop || nop + 9a0: 2f 00 5e 00 nop || nop + 9a4: 2f 00 5e 00 nop || nop + 9a8: 2f 00 5e 00 nop || nop + 9ac: 2f 00 5e 00 nop || nop + 9b0: 2f 00 5e 00 nop || nop + 9b4: 2f 00 5e 00 nop || nop + 9b8: 2f 00 5e 00 nop || nop + 9bc: 2f 00 5e 00 nop || nop + 9c0: 2f 00 5e 00 nop || nop + 9c4: 2f 00 5e 00 nop || nop + 9c8: 2f 00 5e 00 nop || nop + 9cc: 2f 00 5e 00 nop || nop + 9d0: 2f 00 5e 00 nop || nop + 9d4: 2f 00 5e 00 nop || nop + 9d8: 2f 00 5e 00 nop || nop + 9dc: 2f 00 5e 00 nop || nop + 9e0: 2f 00 5e 00 nop || nop + 9e4: 2f 00 5e 00 nop || nop + 9e8: 2f 00 5e 00 nop || nop + 9ec: 2f 00 5e 00 nop || nop + 9f0: 2f 00 5e 00 nop || nop + 9f4: 2f 00 5e 00 nop || nop + 9f8: 2f 00 5e 00 nop || nop + 9fc: 2f 00 5e 00 nop || nop + a00: 2f 00 5e 00 nop || nop + a04: 2f 00 5e 00 nop || nop + a08: 2f 00 5e 00 nop || nop + a0c: 2f 00 5e 00 nop || nop + a10: 2f 00 5e 00 nop || nop + a14: 2f 00 5e 00 nop || nop + a18: 2f 00 5e 00 nop || nop + a1c: 2f 00 5e 00 nop || nop + a20: 2f 00 5e 00 nop || nop + a24: 2f 00 5e 00 nop || nop + a28: 2f 00 5e 00 nop || nop + a2c: 2f 00 5e 00 nop || nop + a30: 2f 00 5e 00 nop || nop + a34: 2f 00 5e 00 nop || nop + a38: 2f 00 5e 00 nop || nop + a3c: 2f 00 5e 00 nop || nop + a40: 2f 00 5e 00 nop || nop + a44: 2f 00 5e 00 nop || nop + a48: 2f 00 5e 00 nop || nop + a4c: 2f 00 5e 00 nop || nop + a50: 2f 00 5e 00 nop || nop + a54: 2f 00 5e 00 nop || nop + a58: 2f 00 5e 00 nop || nop + a5c: 2f 00 5e 00 nop || nop + a60: 2f 00 5e 00 nop || nop + a64: 2f 00 5e 00 nop || nop + a68: 2f 00 5e 00 nop || nop + a6c: 2f 00 5e 00 nop || nop + a70: 2f 00 5e 00 nop || nop + a74: 2f 00 5e 00 nop || nop + a78: 2f 00 5e 00 nop || nop + a7c: 2f 00 5e 00 nop || nop + a80: 2f 00 5e 00 nop || nop + a84: 2f 00 5e 00 nop || nop + a88: 2f 00 5e 00 nop || nop + a8c: 2f 00 5e 00 nop || nop + a90: 2f 00 5e 00 nop || nop + a94: 2f 00 5e 00 nop || nop + a98: 2f 00 5e 00 nop || nop + a9c: 2f 00 5e 00 nop || nop + aa0: 2f 00 5e 00 nop || nop + aa4: 2f 00 5e 00 nop || nop + aa8: 2f 00 5e 00 nop || nop + aac: 2f 00 5e 00 nop || nop + ab0: 2f 00 5e 00 nop || nop + ab4: 2f 00 5e 00 nop || nop + ab8: 2f 00 5e 00 nop || nop + abc: 2f 00 5e 00 nop || nop + ac0: 2f 00 5e 00 nop || nop + ac4: 2f 00 5e 00 nop || nop + ac8: 2f 00 5e 00 nop || nop + acc: 2f 00 5e 00 nop || nop + ad0: 2f 00 5e 00 nop || nop + ad4: 2f 00 5e 00 nop || nop + ad8: 2f 00 5e 00 nop || nop + adc: 2f 00 5e 00 nop || nop + ae0: 2f 00 5e 00 nop || nop + ae4: 2f 00 5e 00 nop || nop + ae8: 2f 00 5e 00 nop || nop + aec: 2f 00 5e 00 nop || nop + af0: 2f 00 5e 00 nop || nop + af4: 2f 00 5e 00 nop || nop + af8: 2f 00 5e 00 nop || nop + afc: 2f 00 5e 00 nop || nop + b00: 2f 00 5e 00 nop || nop + b04: 2f 00 5e 00 nop || nop + b08: 2f 00 5e 00 nop || nop + b0c: 2f 00 5e 00 nop || nop + b10: 2f 00 5e 00 nop || nop + b14: 2f 00 5e 00 nop || nop + b18: 2f 00 5e 00 nop || nop + b1c: 2f 00 5e 00 nop || nop + b20: 2f 00 5e 00 nop || nop + b24: 2f 00 5e 00 nop || nop + b28: 2f 00 5e 00 nop || nop + b2c: 2f 00 5e 00 nop || nop + b30: 2f 00 5e 00 nop || nop + b34: 2f 00 5e 00 nop || nop + b38: 2f 00 5e 00 nop || nop + b3c: 2f 00 5e 00 nop || nop + b40: 2f 00 5e 00 nop || nop + b44: 2f 00 5e 00 nop || nop + b48: 2f 00 5e 00 nop || nop + b4c: 2f 00 5e 00 nop || nop + b50: 2f 00 5e 00 nop || nop + b54: 2f 00 5e 00 nop || nop + b58: 2f 00 5e 00 nop || nop + b5c: 2f 00 5e 00 nop || nop + b60: 2f 00 5e 00 nop || nop + b64: 2f 00 5e 00 nop || nop + b68: 2f 00 5e 00 nop || nop + b6c: 2f 00 5e 00 nop || nop + b70: 2f 00 5e 00 nop || nop + b74: 2f 00 5e 00 nop || nop + b78: 2f 00 5e 00 nop || nop + b7c: 2f 00 5e 00 nop || nop + b80: 2f 00 5e 00 nop || nop + b84: 2f 00 5e 00 nop || nop + b88: 2f 00 5e 00 nop || nop + b8c: 2f 00 5e 00 nop || nop + b90: 2f 00 5e 00 nop || nop + b94: 2f 00 5e 00 nop || nop + b98: 2f 00 5e 00 nop || nop + b9c: 2f 00 5e 00 nop || nop + ba0: 2f 00 5e 00 nop || nop + ba4: 2f 00 5e 00 nop || nop + ba8: 2f 00 5e 00 nop || nop + bac: 2f 00 5e 00 nop || nop + bb0: 2f 00 5e 00 nop || nop + bb4: 2f 00 5e 00 nop || nop + bb8: 2f 00 5e 00 nop || nop + bbc: 2f 00 5e 00 nop || nop + bc0: 2f 00 5e 00 nop || nop + bc4: 2f 00 5e 00 nop || nop + bc8: 2f 00 5e 00 nop || nop + bcc: 2f 00 5e 00 nop || nop + bd0: 2f 00 5e 00 nop || nop + bd4: 2f 00 5e 00 nop || nop + bd8: 2f 00 5e 00 nop || nop + bdc: 2f 00 5e 00 nop || nop + be0: 2f 00 5e 00 nop || nop + be4: 2f 00 5e 00 nop || nop + be8: 2f 00 5e 00 nop || nop + bec: 2f 00 5e 00 nop || nop + bf0: 2f 00 5e 00 nop || nop + bf4: 2f 00 5e 00 nop || nop + bf8: 2f 00 5e 00 nop || nop + bfc: 2f 00 5e 00 nop || nop + c00: 2f 00 5e 00 nop || nop + c04: 2f 00 5e 00 nop || nop + c08: 2f 00 5e 00 nop || nop + c0c: 2f 00 5e 00 nop || nop + c10: 2f 00 5e 00 nop || nop + c14: 2f 00 5e 00 nop || nop + c18: 2f 00 5e 00 nop || nop + c1c: 2f 00 5e 00 nop || nop + c20: 2f 00 5e 00 nop || nop + c24: 2f 00 5e 00 nop || nop + c28: 2f 00 5e 00 nop || nop + c2c: 2f 00 5e 00 nop || nop + c30: 2f 00 5e 00 nop || nop + c34: 2f 00 5e 00 nop || nop + c38: 2f 00 5e 00 nop || nop + c3c: 2f 00 5e 00 nop || nop + c40: 2f 00 5e 00 nop || nop + c44: 2f 00 5e 00 nop || nop + c48: 2f 00 5e 00 nop || nop + c4c: 2f 00 5e 00 nop || nop + c50: 2f 00 5e 00 nop || nop + c54: 2f 00 5e 00 nop || nop + c58: 2f 00 5e 00 nop || nop + c5c: 2f 00 5e 00 nop || nop + c60: 2f 00 5e 00 nop || nop + c64: 2f 00 5e 00 nop || nop + c68: 2f 00 5e 00 nop || nop + c6c: 2f 00 5e 00 nop || nop + c70: 2f 00 5e 00 nop || nop + c74: 2f 00 5e 00 nop || nop + c78: 2f 00 5e 00 nop || nop + c7c: 2f 00 5e 00 nop || nop + c80: 2f 00 5e 00 nop || nop + c84: 2f 00 5e 00 nop || nop + c88: 2f 00 5e 00 nop || nop + c8c: 2f 00 5e 00 nop || nop + c90: 2f 00 5e 00 nop || nop + c94: 2f 00 5e 00 nop || nop + c98: 2f 00 5e 00 nop || nop + c9c: 2f 00 5e 00 nop || nop + ca0: 2f 00 5e 00 nop || nop + ca4: 2f 00 5e 00 nop || nop + ca8: 2f 00 5e 00 nop || nop + cac: 2f 00 5e 00 nop || nop + cb0: 2f 00 5e 00 nop || nop + cb4: 2f 00 5e 00 nop || nop + cb8: 2f 00 5e 00 nop || nop + cbc: 2f 00 5e 00 nop || nop + cc0: 2f 00 5e 00 nop || nop + cc4: 2f 00 5e 00 nop || nop + cc8: 2f 00 5e 00 nop || nop + ccc: 2f 00 5e 00 nop || nop + cd0: 2f 00 5e 00 nop || nop + cd4: 2f 00 5e 00 nop || nop + cd8: 2f 00 5e 00 nop || nop + cdc: 2f 00 5e 00 nop || nop + ce0: 2f 00 5e 00 nop || nop + ce4: 2f 00 5e 00 nop || nop + ce8: 2f 00 5e 00 nop || nop + cec: 2f 00 5e 00 nop || nop + cf0: 2f 00 5e 00 nop || nop + cf4: 2f 00 5e 00 nop || nop + cf8: 2f 00 5e 00 nop || nop + cfc: 2f 00 5e 00 nop || nop + d00: 2f 00 5e 00 nop || nop + d04: 2f 00 5e 00 nop || nop + d08: 2f 00 5e 00 nop || nop + d0c: 2f 00 5e 00 nop || nop + d10: 2f 00 5e 00 nop || nop + d14: 2f 00 5e 00 nop || nop + d18: 2f 00 5e 00 nop || nop + d1c: 2f 00 5e 00 nop || nop + d20: 2f 00 5e 00 nop || nop + d24: 2f 00 5e 00 nop || nop + d28: 2f 00 5e 00 nop || nop + d2c: 2f 00 5e 00 nop || nop + d30: 2f 00 5e 00 nop || nop + d34: 2f 00 5e 00 nop || nop + d38: 2f 00 5e 00 nop || nop + d3c: 2f 00 5e 00 nop || nop + d40: 2f 00 5e 00 nop || nop + d44: 2f 00 5e 00 nop || nop + d48: 2f 00 5e 00 nop || nop + d4c: 2f 00 5e 00 nop || nop + d50: 2f 00 5e 00 nop || nop + d54: 2f 00 5e 00 nop || nop + d58: 2f 00 5e 00 nop || nop + d5c: 2f 00 5e 00 nop || nop + d60: 2f 00 5e 00 nop || nop + d64: 2f 00 5e 00 nop || nop + d68: 2f 00 5e 00 nop || nop + d6c: 2f 00 5e 00 nop || nop + d70: 2f 00 5e 00 nop || nop + d74: 2f 00 5e 00 nop || nop + d78: 2f 00 5e 00 nop || nop + d7c: 2f 00 5e 00 nop || nop + d80: 2f 00 5e 00 nop || nop + d84: 2f 00 5e 00 nop || nop + d88: 2f 00 5e 00 nop || nop + d8c: 2f 00 5e 00 nop || nop + d90: 2f 00 5e 00 nop || nop + d94: 2f 00 5e 00 nop || nop + d98: 2f 00 5e 00 nop || nop + d9c: 2f 00 5e 00 nop || nop + da0: 2f 00 5e 00 nop || nop + da4: 2f 00 5e 00 nop || nop + da8: 2f 00 5e 00 nop || nop + dac: 2f 00 5e 00 nop || nop + db0: 2f 00 5e 00 nop || nop + db4: 2f 00 5e 00 nop || nop + db8: 2f 00 5e 00 nop || nop + dbc: 2f 00 5e 00 nop || nop + dc0: 2f 00 5e 00 nop || nop + dc4: 2f 00 5e 00 nop || nop + dc8: 2f 00 5e 00 nop || nop + dcc: 2f 00 5e 00 nop || nop + dd0: 2f 00 5e 00 nop || nop + dd4: 2f 00 5e 00 nop || nop + dd8: 2f 00 5e 00 nop || nop + ddc: 2f 00 5e 00 nop || nop + de0: 2f 00 5e 00 nop || nop + de4: 2f 00 5e 00 nop || nop + de8: 2f 00 5e 00 nop || nop + dec: 2f 00 5e 00 nop || nop + df0: 2f 00 5e 00 nop || nop + df4: 2f 00 5e 00 nop || nop + df8: 2f 00 5e 00 nop || nop + dfc: 2f 00 5e 00 nop || nop + e00: 2f 00 5e 00 nop || nop + e04: 2f 00 5e 00 nop || nop + e08: 2f 00 5e 00 nop || nop + e0c: 2f 00 5e 00 nop || nop + e10: 2f 00 5e 00 nop || nop + e14: 2f 00 5e 00 nop || nop + e18: 2f 00 5e 00 nop || nop + e1c: 2f 00 5e 00 nop || nop + e20: 2f 00 5e 00 nop || nop + e24: 2f 00 5e 00 nop || nop + e28: 2f 00 5e 00 nop || nop + e2c: 2f 00 5e 00 nop || nop + e30: 2f 00 5e 00 nop || nop + e34: 2f 00 5e 00 nop || nop + e38: 2f 00 5e 00 nop || nop + e3c: 2f 00 5e 00 nop || nop + e40: 2f 00 5e 00 nop || nop + e44: 2f 00 5e 00 nop || nop + e48: 2f 00 5e 00 nop || nop + e4c: 2f 00 5e 00 nop || nop + e50: 2f 00 5e 00 nop || nop + e54: 2f 00 5e 00 nop || nop + e58: 2f 00 5e 00 nop || nop + e5c: 2f 00 5e 00 nop || nop + e60: 2f 00 5e 00 nop || nop + e64: 2f 00 5e 00 nop || nop + e68: 2f 00 5e 00 nop || nop + e6c: 2f 00 5e 00 nop || nop + e70: 2f 00 5e 00 nop || nop + e74: 2f 00 5e 00 nop || nop + e78: 2f 00 5e 00 nop || nop + e7c: 2f 00 5e 00 nop || nop + e80: 2f 00 5e 00 nop || nop + e84: 2f 00 5e 00 nop || nop + e88: 2f 00 5e 00 nop || nop + e8c: 2f 00 5e 00 nop || nop + e90: 2f 00 5e 00 nop || nop + e94: 2f 00 5e 00 nop || nop + e98: 2f 00 5e 00 nop || nop + e9c: 2f 00 5e 00 nop || nop + ea0: 2f 00 5e 00 nop || nop + ea4: 2f 00 5e 00 nop || nop + ea8: 2f 00 5e 00 nop || nop + eac: 2f 00 5e 00 nop || nop + eb0: 2f 00 5e 00 nop || nop + eb4: 2f 00 5e 00 nop || nop + eb8: 2f 00 5e 00 nop || nop + ebc: 2f 00 5e 00 nop || nop + ec0: 2f 00 5e 00 nop || nop + ec4: 2f 00 5e 00 nop || nop + ec8: 2f 00 5e 00 nop || nop + ecc: 2f 00 5e 00 nop || nop + ed0: 2f 00 5e 00 nop || nop + ed4: 2f 00 5e 00 nop || nop + ed8: 2f 00 5e 00 nop || nop + edc: 2f 00 5e 00 nop || nop + ee0: 2f 00 5e 00 nop || nop + ee4: 2f 00 5e 00 nop || nop + ee8: 2f 00 5e 00 nop || nop + eec: 2f 00 5e 00 nop || nop + ef0: 2f 00 5e 00 nop || nop + ef4: 2f 00 5e 00 nop || nop + ef8: 2f 00 5e 00 nop || nop + efc: 2f 00 5e 00 nop || nop + f00: 2f 00 5e 00 nop || nop + f04: 2f 00 5e 00 nop || nop + f08: 2f 00 5e 00 nop || nop + f0c: 2f 00 5e 00 nop || nop + f10: 2f 00 5e 00 nop || nop + f14: 2f 00 5e 00 nop || nop + f18: 2f 00 5e 00 nop || nop + f1c: 2f 00 5e 00 nop || nop + f20: 2f 00 5e 00 nop || nop + f24: 2f 00 5e 00 nop || nop + f28: 2f 00 5e 00 nop || nop + f2c: 2f 00 5e 00 nop || nop + f30: 2f 00 5e 00 nop || nop + f34: 2f 00 5e 00 nop || nop + f38: 2f 00 5e 00 nop || nop + f3c: 2f 00 5e 00 nop || nop + f40: 2f 00 5e 00 nop || nop + f44: 2f 00 5e 00 nop || nop + f48: 2f 00 5e 00 nop || nop + f4c: 2f 00 5e 00 nop || nop + f50: 2f 00 5e 00 nop || nop + f54: 2f 00 5e 00 nop || nop + f58: 2f 00 5e 00 nop || nop + f5c: 2f 00 5e 00 nop || nop + f60: 2f 00 5e 00 nop || nop + f64: 2f 00 5e 00 nop || nop + f68: 2f 00 5e 00 nop || nop + f6c: 2f 00 5e 00 nop || nop + f70: 2f 00 5e 00 nop || nop + f74: 2f 00 5e 00 nop || nop + f78: 2f 00 5e 00 nop || nop + f7c: 2f 00 5e 00 nop || nop + f80: 2f 00 5e 00 nop || nop + f84: 2f 00 5e 00 nop || nop + f88: 2f 00 5e 00 nop || nop + f8c: 2f 00 5e 00 nop || nop + f90: 2f 00 5e 00 nop || nop + f94: 2f 00 5e 00 nop || nop + f98: 2f 00 5e 00 nop || nop + f9c: 2f 00 5e 00 nop || nop + fa0: 2f 00 5e 00 nop || nop + fa4: 2f 00 5e 00 nop || nop + fa8: 2f 00 5e 00 nop || nop + fac: 2f 00 5e 00 nop || nop + fb0: 2f 00 5e 00 nop || nop + fb4: 2f 00 5e 00 nop || nop + fb8: 2f 00 5e 00 nop || nop + fbc: 2f 00 5e 00 nop || nop + fc0: 2f 00 5e 00 nop || nop + fc4: 2f 00 5e 00 nop || nop + fc8: 2f 00 5e 00 nop || nop + fcc: 2f 00 5e 00 nop || nop + fd0: 2f 00 5e 00 nop || nop + fd4: 2f 00 5e 00 nop || nop + fd8: 2f 00 5e 00 nop || nop + fdc: 2f 00 5e 00 nop || nop + fe0: 2f 00 5e 00 nop || nop + fe4: 2f 00 5e 00 nop || nop + fe8: 2f 00 5e 00 nop || nop + fec: 2f 00 5e 00 nop || nop + ff0: 2f 00 5e 00 nop || nop + ff4: 2f 00 5e 00 nop || nop + ff8: 2f 00 5e 00 nop || nop + ffc: 2f 00 5e 00 nop || nop + 1000: 2f 00 5e 00 nop || nop + 1004: 2f 00 5e 00 nop || nop + 1008: 2f 00 5e 00 nop || nop + 100c: 2f 00 5e 00 nop || nop + 1010: 2f 00 5e 00 nop || nop + 1014: 2f 00 5e 00 nop || nop + 1018: 2f 00 5e 00 nop || nop + 101c: 2f 00 5e 00 nop || nop + 1020: 2f 00 5e 00 nop || nop + 1024: 2f 00 5e 00 nop || nop + 1028: 2f 00 5e 00 nop || nop + 102c: 2f 00 5e 00 nop || nop + 1030: 2f 00 5e 00 nop || nop + 1034: 2f 00 5e 00 nop || nop + 1038: 2f 00 5e 00 nop || nop + 103c: 2f 00 5e 00 nop || nop + 1040: 2f 00 5e 00 nop || nop + 1044: 2f 00 5e 00 nop || nop + 1048: 2f 00 5e 00 nop || nop + 104c: 2f 00 5e 00 nop || nop + 1050: 2f 00 5e 00 nop || nop + 1054: 2f 00 5e 00 nop || nop + 1058: 2f 00 5e 00 nop || nop + 105c: 2f 00 5e 00 nop || nop + 1060: 2f 00 5e 00 nop || nop + 1064: 2f 00 5e 00 nop || nop + 1068: 2f 00 5e 00 nop || nop + 106c: 2f 00 5e 00 nop || nop + 1070: 2f 00 5e 00 nop || nop + 1074: 2f 00 5e 00 nop || nop + 1078: 2f 00 5e 00 nop || nop + 107c: 2f 00 5e 00 nop || nop + 1080: 2f 00 5e 00 nop || nop + 1084: 2f 00 5e 00 nop || nop + 1088: 2f 00 5e 00 nop || nop + 108c: 2f 00 5e 00 nop || nop + 1090: 2f 00 5e 00 nop || nop + 1094: 2f 00 5e 00 nop || nop + 1098: 2f 00 5e 00 nop || nop + 109c: 2f 00 5e 00 nop || nop + 10a0: 2f 00 5e 00 nop || nop + 10a4: 2f 00 5e 00 nop || nop + 10a8: 2f 00 5e 00 nop || nop + 10ac: 2f 00 5e 00 nop || nop + 10b0: 2f 00 5e 00 nop || nop + 10b4: 2f 00 5e 00 nop || nop + 10b8: 2f 00 5e 00 nop || nop + 10bc: 2f 00 5e 00 nop || nop + 10c0: 2f 00 5e 00 nop || nop + 10c4: 2f 00 5e 00 nop || nop + 10c8: 2f 00 5e 00 nop || nop + 10cc: 2f 00 5e 00 nop || nop + 10d0: 2f 00 5e 00 nop || nop + 10d4: 2f 00 5e 00 nop || nop + 10d8: 2f 00 5e 00 nop || nop + 10dc: 2f 00 5e 00 nop || nop + 10e0: 2f 00 5e 00 nop || nop + 10e4: 2f 00 5e 00 nop || nop + 10e8: 2f 00 5e 00 nop || nop + 10ec: 2f 00 5e 00 nop || nop + 10f0: 2f 00 5e 00 nop || nop + 10f4: 2f 00 5e 00 nop || nop + 10f8: 2f 00 5e 00 nop || nop + 10fc: 2f 00 5e 00 nop || nop + 1100: 2f 00 5e 00 nop || nop + 1104: 2f 00 5e 00 nop || nop + 1108: 2f 00 5e 00 nop || nop + 110c: 2f 00 5e 00 nop || nop + 1110: 2f 00 5e 00 nop || nop + 1114: 2f 00 5e 00 nop || nop + 1118: 2f 00 5e 00 nop || nop + 111c: 2f 00 5e 00 nop || nop + 1120: 2f 00 5e 00 nop || nop + 1124: 2f 00 5e 00 nop || nop + 1128: 2f 00 5e 00 nop || nop + 112c: 2f 00 5e 00 nop || nop + 1130: 2f 00 5e 00 nop || nop + 1134: 2f 00 5e 00 nop || nop + 1138: 2f 00 5e 00 nop || nop + 113c: 2f 00 5e 00 nop || nop + 1140: 2f 00 5e 00 nop || nop + 1144: 2f 00 5e 00 nop || nop + 1148: 2f 00 5e 00 nop || nop + 114c: 2f 00 5e 00 nop || nop + 1150: 2f 00 5e 00 nop || nop + 1154: 2f 00 5e 00 nop || nop + 1158: 2f 00 5e 00 nop || nop + 115c: 2f 00 5e 00 nop || nop + 1160: 2f 00 5e 00 nop || nop + 1164: 2f 00 5e 00 nop || nop + 1168: 2f 00 5e 00 nop || nop + 116c: 2f 00 5e 00 nop || nop + 1170: 2f 00 5e 00 nop || nop + 1174: 2f 00 5e 00 nop || nop + 1178: 2f 00 5e 00 nop || nop + 117c: 2f 00 5e 00 nop || nop + 1180: 2f 00 5e 00 nop || nop + 1184: 2f 00 5e 00 nop || nop + 1188: 2f 00 5e 00 nop || nop + 118c: 2f 00 5e 00 nop || nop + 1190: 2f 00 5e 00 nop || nop + 1194: 2f 00 5e 00 nop || nop + 1198: 2f 00 5e 00 nop || nop + 119c: 2f 00 5e 00 nop || nop + 11a0: 2f 00 5e 00 nop || nop + 11a4: 2f 00 5e 00 nop || nop + 11a8: 2f 00 5e 00 nop || nop + 11ac: 2f 00 5e 00 nop || nop + 11b0: 2f 00 5e 00 nop || nop + 11b4: 2f 00 5e 00 nop || nop + 11b8: 2f 00 5e 00 nop || nop + 11bc: 2f 00 5e 00 nop || nop + 11c0: 2f 00 5e 00 nop || nop + 11c4: 2f 00 5e 00 nop || nop + 11c8: 2f 00 5e 00 nop || nop + 11cc: 2f 00 5e 00 nop || nop + 11d0: 2f 00 5e 00 nop || nop + 11d4: 2f 00 5e 00 nop || nop + 11d8: 2f 00 5e 00 nop || nop + 11dc: 2f 00 5e 00 nop || nop + 11e0: 2f 00 5e 00 nop || nop + 11e4: 2f 00 5e 00 nop || nop + 11e8: 2f 00 5e 00 nop || nop + 11ec: 2f 00 5e 00 nop || nop + 11f0: 2f 00 5e 00 nop || nop + 11f4: 2f 00 5e 00 nop || nop + 11f8: 2f 00 5e 00 nop || nop + 11fc: 2f 00 5e 00 nop || nop + 1200: 2f 00 5e 00 nop || nop + 1204: 2f 00 5e 00 nop || nop + 1208: 2f 00 5e 00 nop || nop + 120c: 2f 00 5e 00 nop || nop + 1210: 2f 00 5e 00 nop || nop + 1214: 2f 00 5e 00 nop || nop + 1218: 2f 00 5e 00 nop || nop + 121c: 2f 00 5e 00 nop || nop + 1220: 2f 00 5e 00 nop || nop + 1224: 2f 00 5e 00 nop || nop + 1228: 2f 00 5e 00 nop || nop + 122c: 2f 00 5e 00 nop || nop + 1230: 2f 00 5e 00 nop || nop + 1234: 2f 00 5e 00 nop || nop + 1238: 2f 00 5e 00 nop || nop + 123c: 2f 00 5e 00 nop || nop + 1240: 2f 00 5e 00 nop || nop + 1244: 2f 00 5e 00 nop || nop + 1248: 2f 00 5e 00 nop || nop + 124c: 2f 00 5e 00 nop || nop + 1250: 2f 00 5e 00 nop || nop + 1254: 2f 00 5e 00 nop || nop + 1258: 2f 00 5e 00 nop || nop + 125c: 2f 00 5e 00 nop || nop + 1260: 2f 00 5e 00 nop || nop + 1264: 2f 00 5e 00 nop || nop + 1268: 2f 00 5e 00 nop || nop + 126c: 2f 00 5e 00 nop || nop + 1270: 2f 00 5e 00 nop || nop + 1274: 2f 00 5e 00 nop || nop + 1278: 2f 00 5e 00 nop || nop + 127c: 2f 00 5e 00 nop || nop + 1280: 2f 00 5e 00 nop || nop + 1284: 2f 00 5e 00 nop || nop + 1288: 2f 00 5e 00 nop || nop + 128c: 2f 00 5e 00 nop || nop + 1290: 2f 00 5e 00 nop || nop + 1294: 2f 00 5e 00 nop || nop + 1298: 2f 00 5e 00 nop || nop + 129c: 2f 00 5e 00 nop || nop + 12a0: 2f 00 5e 00 nop || nop + 12a4: 2f 00 5e 00 nop || nop + 12a8: 2f 00 5e 00 nop || nop + 12ac: 2f 00 5e 00 nop || nop + 12b0: 2f 00 5e 00 nop || nop + 12b4: 2f 00 5e 00 nop || nop + 12b8: 2f 00 5e 00 nop || nop + 12bc: 2f 00 5e 00 nop || nop + 12c0: 2f 00 5e 00 nop || nop + 12c4: 2f 00 5e 00 nop || nop + 12c8: 2f 00 5e 00 nop || nop + 12cc: 2f 00 5e 00 nop || nop + 12d0: 2f 00 5e 00 nop || nop + 12d4: 2f 00 5e 00 nop || nop + 12d8: 2f 00 5e 00 nop || nop + 12dc: 2f 00 5e 00 nop || nop + 12e0: 2f 00 5e 00 nop || nop + 12e4: 2f 00 5e 00 nop || nop + 12e8: 2f 00 5e 00 nop || nop + 12ec: 2f 00 5e 00 nop || nop + 12f0: 2f 00 5e 00 nop || nop + 12f4: 2f 00 5e 00 nop || nop + 12f8: 2f 00 5e 00 nop || nop + 12fc: 2f 00 5e 00 nop || nop + 1300: 2f 00 5e 00 nop || nop + 1304: 2f 00 5e 00 nop || nop + 1308: 2f 00 5e 00 nop || nop + 130c: 2f 00 5e 00 nop || nop + 1310: 2f 00 5e 00 nop || nop + 1314: 2f 00 5e 00 nop || nop + 1318: 2f 00 5e 00 nop || nop + 131c: 2f 00 5e 00 nop || nop + 1320: 2f 00 5e 00 nop || nop + 1324: 2f 00 5e 00 nop || nop + 1328: 2f 00 5e 00 nop || nop + 132c: 2f 00 5e 00 nop || nop + 1330: 2f 00 5e 00 nop || nop + 1334: 2f 00 5e 00 nop || nop + 1338: 2f 00 5e 00 nop || nop + 133c: 2f 00 5e 00 nop || nop + 1340: 2f 00 5e 00 nop || nop + 1344: 2f 00 5e 00 nop || nop + 1348: 2f 00 5e 00 nop || nop + 134c: 2f 00 5e 00 nop || nop + 1350: 2f 00 5e 00 nop || nop + 1354: 2f 00 5e 00 nop || nop + 1358: 2f 00 5e 00 nop || nop + 135c: 2f 00 5e 00 nop || nop + 1360: 2f 00 5e 00 nop || nop + 1364: 2f 00 5e 00 nop || nop + 1368: 2f 00 5e 00 nop || nop + 136c: 2f 00 5e 00 nop || nop + 1370: 2f 00 5e 00 nop || nop + 1374: 2f 00 5e 00 nop || nop + 1378: 2f 00 5e 00 nop || nop + 137c: 2f 00 5e 00 nop || nop + 1380: 2f 00 5e 00 nop || nop + 1384: 2f 00 5e 00 nop || nop + 1388: 2f 00 5e 00 nop || nop + 138c: 2f 00 5e 00 nop || nop + 1390: 2f 00 5e 00 nop || nop + 1394: 2f 00 5e 00 nop || nop + 1398: 2f 00 5e 00 nop || nop + 139c: 2f 00 5e 00 nop || nop + 13a0: 2f 00 5e 00 nop || nop + 13a4: 2f 00 5e 00 nop || nop + 13a8: 2f 00 5e 00 nop || nop + 13ac: 2f 00 5e 00 nop || nop + 13b0: 2f 00 5e 00 nop || nop + 13b4: 2f 00 5e 00 nop || nop + 13b8: 2f 00 5e 00 nop || nop + 13bc: 2f 00 5e 00 nop || nop + 13c0: 2f 00 5e 00 nop || nop + 13c4: 2f 00 5e 00 nop || nop + 13c8: 2f 00 5e 00 nop || nop + 13cc: 2f 00 5e 00 nop || nop + 13d0: 2f 00 5e 00 nop || nop + 13d4: 2f 00 5e 00 nop || nop + 13d8: 2f 00 5e 00 nop || nop + 13dc: 2f 00 5e 00 nop || nop + 13e0: 2f 00 5e 00 nop || nop + 13e4: 2f 00 5e 00 nop || nop + 13e8: 2f 00 5e 00 nop || nop + 13ec: 2f 00 5e 00 nop || nop + 13f0: 2f 00 5e 00 nop || nop + 13f4: 2f 00 5e 00 nop || nop + 13f8: 2f 00 5e 00 nop || nop + 13fc: 2f 00 5e 00 nop || nop + 1400: 2f 00 5e 00 nop || nop + 1404: 2f 00 5e 00 nop || nop + 1408: 2f 00 5e 00 nop || nop + 140c: 2f 00 5e 00 nop || nop + 1410: 2f 00 5e 00 nop || nop + 1414: 2f 00 5e 00 nop || nop + 1418: 2f 00 5e 00 nop || nop + 141c: 2f 00 5e 00 nop || nop + 1420: 2f 00 5e 00 nop || nop + 1424: 2f 00 5e 00 nop || nop + 1428: 2f 00 5e 00 nop || nop + 142c: 2f 00 5e 00 nop || nop + 1430: 2f 00 5e 00 nop || nop + 1434: 2f 00 5e 00 nop || nop + 1438: 2f 00 5e 00 nop || nop + 143c: 2f 00 5e 00 nop || nop + 1440: 2f 00 5e 00 nop || nop + 1444: 2f 00 5e 00 nop || nop + 1448: 2f 00 5e 00 nop || nop + 144c: 2f 00 5e 00 nop || nop + 1450: 2f 00 5e 00 nop || nop + 1454: 2f 00 5e 00 nop || nop + 1458: 2f 00 5e 00 nop || nop + 145c: 2f 00 5e 00 nop || nop + 1460: 2f 00 5e 00 nop || nop + 1464: 2f 00 5e 00 nop || nop + 1468: 2f 00 5e 00 nop || nop + 146c: 2f 00 5e 00 nop || nop + 1470: 2f 00 5e 00 nop || nop + 1474: 2f 00 5e 00 nop || nop + 1478: 2f 00 5e 00 nop || nop + 147c: 2f 00 5e 00 nop || nop + 1480: 2f 00 5e 00 nop || nop + 1484: 2f 00 5e 00 nop || nop + 1488: 2f 00 5e 00 nop || nop + 148c: 2f 00 5e 00 nop || nop + 1490: 2f 00 5e 00 nop || nop + 1494: 2f 00 5e 00 nop || nop + 1498: 2f 00 5e 00 nop || nop + 149c: 2f 00 5e 00 nop || nop + 14a0: 2f 00 5e 00 nop || nop + 14a4: 2f 00 5e 00 nop || nop + 14a8: 2f 00 5e 00 nop || nop + 14ac: 2f 00 5e 00 nop || nop + 14b0: 2f 00 5e 00 nop || nop + 14b4: 2f 00 5e 00 nop || nop + 14b8: 2f 00 5e 00 nop || nop + 14bc: 2f 00 5e 00 nop || nop + 14c0: 2f 00 5e 00 nop || nop + 14c4: 2f 00 5e 00 nop || nop + 14c8: 2f 00 5e 00 nop || nop + 14cc: 2f 00 5e 00 nop || nop + 14d0: 2f 00 5e 00 nop || nop + 14d4: 2f 00 5e 00 nop || nop + 14d8: 2f 00 5e 00 nop || nop + 14dc: 2f 00 5e 00 nop || nop + 14e0: 2f 00 5e 00 nop || nop + 14e4: 2f 00 5e 00 nop || nop + 14e8: 2f 00 5e 00 nop || nop + 14ec: 2f 00 5e 00 nop || nop + 14f0: 2f 00 5e 00 nop || nop + 14f4: 2f 00 5e 00 nop || nop + 14f8: 2f 00 5e 00 nop || nop + 14fc: 2f 00 5e 00 nop || nop + 1500: 2f 00 5e 00 nop || nop + 1504: 2f 00 5e 00 nop || nop + 1508: 2f 00 5e 00 nop || nop + 150c: 2f 00 5e 00 nop || nop + 1510: 2f 00 5e 00 nop || nop + 1514: 2f 00 5e 00 nop || nop + 1518: 2f 00 5e 00 nop || nop + 151c: 2f 00 5e 00 nop || nop + 1520: 2f 00 5e 00 nop || nop + 1524: 2f 00 5e 00 nop || nop + 1528: 2f 00 5e 00 nop || nop + 152c: 2f 00 5e 00 nop || nop + 1530: 2f 00 5e 00 nop || nop + 1534: 2f 00 5e 00 nop || nop + 1538: 2f 00 5e 00 nop || nop + 153c: 2f 00 5e 00 nop || nop + 1540: 2f 00 5e 00 nop || nop + 1544: 2f 00 5e 00 nop || nop + 1548: 2f 00 5e 00 nop || nop + 154c: 2f 00 5e 00 nop || nop + 1550: 2f 00 5e 00 nop || nop + 1554: 2f 00 5e 00 nop || nop + 1558: 2f 00 5e 00 nop || nop + 155c: 2f 00 5e 00 nop || nop + 1560: 2f 00 5e 00 nop || nop + 1564: 2f 00 5e 00 nop || nop + 1568: 2f 00 5e 00 nop || nop + 156c: 2f 00 5e 00 nop || nop + 1570: 2f 00 5e 00 nop || nop + 1574: 2f 00 5e 00 nop || nop + 1578: 2f 00 5e 00 nop || nop + 157c: 2f 00 5e 00 nop || nop + 1580: 2f 00 5e 00 nop || nop + 1584: 2f 00 5e 00 nop || nop + 1588: 2f 00 5e 00 nop || nop + 158c: 2f 00 5e 00 nop || nop + 1590: 2f 00 5e 00 nop || nop + 1594: 2f 00 5e 00 nop || nop + 1598: 2f 00 5e 00 nop || nop + 159c: 2f 00 5e 00 nop || nop + 15a0: 2f 00 5e 00 nop || nop + 15a4: 2f 00 5e 00 nop || nop + 15a8: 2f 00 5e 00 nop || nop + 15ac: 2f 00 5e 00 nop || nop + 15b0: 2f 00 5e 00 nop || nop + 15b4: 2f 00 5e 00 nop || nop + 15b8: 2f 00 5e 00 nop || nop + 15bc: 2f 00 5e 00 nop || nop + 15c0: 2f 00 5e 00 nop || nop + 15c4: 2f 00 5e 00 nop || nop + 15c8: 2f 00 5e 00 nop || nop + 15cc: 2f 00 5e 00 nop || nop + 15d0: 2f 00 5e 00 nop || nop + 15d4: 2f 00 5e 00 nop || nop + 15d8: 2f 00 5e 00 nop || nop + 15dc: 2f 00 5e 00 nop || nop + 15e0: 2f 00 5e 00 nop || nop + 15e4: 2f 00 5e 00 nop || nop + 15e8: 2f 00 5e 00 nop || nop + 15ec: 2f 00 5e 00 nop || nop + 15f0: 2f 00 5e 00 nop || nop + 15f4: 2f 00 5e 00 nop || nop + 15f8: 2f 00 5e 00 nop || nop + 15fc: 2f 00 5e 00 nop || nop + 1600: 2f 00 5e 00 nop || nop + 1604: 2f 00 5e 00 nop || nop + 1608: 2f 00 5e 00 nop || nop + 160c: 2f 00 5e 00 nop || nop + 1610: 2f 00 5e 00 nop || nop + 1614: 2f 00 5e 00 nop || nop + 1618: 2f 00 5e 00 nop || nop + 161c: 2f 00 5e 00 nop || nop + 1620: 2f 00 5e 00 nop || nop + 1624: 2f 00 5e 00 nop || nop + 1628: 2f 00 5e 00 nop || nop + 162c: 2f 00 5e 00 nop || nop + 1630: 2f 00 5e 00 nop || nop + 1634: 2f 00 5e 00 nop || nop + 1638: 2f 00 5e 00 nop || nop + 163c: 2f 00 5e 00 nop || nop + 1640: 2f 00 5e 00 nop || nop + 1644: 2f 00 5e 00 nop || nop + 1648: 2f 00 5e 00 nop || nop + 164c: 2f 00 5e 00 nop || nop + 1650: 2f 00 5e 00 nop || nop + 1654: 2f 00 5e 00 nop || nop + 1658: 2f 00 5e 00 nop || nop + 165c: 2f 00 5e 00 nop || nop + 1660: 2f 00 5e 00 nop || nop + 1664: 2f 00 5e 00 nop || nop + 1668: 2f 00 5e 00 nop || nop + 166c: 2f 00 5e 00 nop || nop + 1670: 2f 00 5e 00 nop || nop + 1674: 2f 00 5e 00 nop || nop + 1678: 2f 00 5e 00 nop || nop + 167c: 2f 00 5e 00 nop || nop + 1680: 2f 00 5e 00 nop || nop + 1684: 2f 00 5e 00 nop || nop + 1688: 2f 00 5e 00 nop || nop + 168c: 2f 00 5e 00 nop || nop + 1690: 2f 00 5e 00 nop || nop + 1694: 2f 00 5e 00 nop || nop + 1698: 2f 00 5e 00 nop || nop + 169c: 2f 00 5e 00 nop || nop + 16a0: 2f 00 5e 00 nop || nop + 16a4: 2f 00 5e 00 nop || nop + 16a8: 2f 00 5e 00 nop || nop + 16ac: 2f 00 5e 00 nop || nop + 16b0: 2f 00 5e 00 nop || nop + 16b4: 2f 00 5e 00 nop || nop + 16b8: 2f 00 5e 00 nop || nop + 16bc: 2f 00 5e 00 nop || nop + 16c0: 2f 00 5e 00 nop || nop + 16c4: 2f 00 5e 00 nop || nop + 16c8: 2f 00 5e 00 nop || nop + 16cc: 2f 00 5e 00 nop || nop + 16d0: 2f 00 5e 00 nop || nop + 16d4: 2f 00 5e 00 nop || nop + 16d8: 2f 00 5e 00 nop || nop + 16dc: 2f 00 5e 00 nop || nop + 16e0: 2f 00 5e 00 nop || nop + 16e4: 2f 00 5e 00 nop || nop + 16e8: 2f 00 5e 00 nop || nop + 16ec: 2f 00 5e 00 nop || nop + 16f0: 2f 00 5e 00 nop || nop + 16f4: 2f 00 5e 00 nop || nop + 16f8: 2f 00 5e 00 nop || nop + 16fc: 2f 00 5e 00 nop || nop + 1700: 2f 00 5e 00 nop || nop + 1704: 2f 00 5e 00 nop || nop + 1708: 2f 00 5e 00 nop || nop + 170c: 2f 00 5e 00 nop || nop + 1710: 2f 00 5e 00 nop || nop + 1714: 2f 00 5e 00 nop || nop + 1718: 2f 00 5e 00 nop || nop + 171c: 2f 00 5e 00 nop || nop + 1720: 2f 00 5e 00 nop || nop + 1724: 2f 00 5e 00 nop || nop + 1728: 2f 00 5e 00 nop || nop + 172c: 2f 00 5e 00 nop || nop + 1730: 2f 00 5e 00 nop || nop + 1734: 2f 00 5e 00 nop || nop + 1738: 2f 00 5e 00 nop || nop + 173c: 2f 00 5e 00 nop || nop + 1740: 2f 00 5e 00 nop || nop + 1744: 2f 00 5e 00 nop || nop + 1748: 2f 00 5e 00 nop || nop + 174c: 2f 00 5e 00 nop || nop + 1750: 2f 00 5e 00 nop || nop + 1754: 2f 00 5e 00 nop || nop + 1758: 2f 00 5e 00 nop || nop + 175c: 2f 00 5e 00 nop || nop + 1760: 2f 00 5e 00 nop || nop + 1764: 2f 00 5e 00 nop || nop + 1768: 2f 00 5e 00 nop || nop + 176c: 2f 00 5e 00 nop || nop + 1770: 2f 00 5e 00 nop || nop + 1774: 2f 00 5e 00 nop || nop + 1778: 2f 00 5e 00 nop || nop + 177c: 2f 00 5e 00 nop || nop + 1780: 2f 00 5e 00 nop || nop + 1784: 2f 00 5e 00 nop || nop + 1788: 2f 00 5e 00 nop || nop + 178c: 2f 00 5e 00 nop || nop + 1790: 2f 00 5e 00 nop || nop + 1794: 2f 00 5e 00 nop || nop + 1798: 2f 00 5e 00 nop || nop + 179c: 2f 00 5e 00 nop || nop + 17a0: 2f 00 5e 00 nop || nop + 17a4: 2f 00 5e 00 nop || nop +000017a8 : + 17a8: 2f 00 5e 00 nop || nop + 17ac: 2f 00 5e 00 nop || nop + 17b0: 2f 00 5e 00 nop || nop + 17b4: 2f 00 5e 00 nop || nop + 17b8: 2f 00 5e 00 nop || nop + 17bc: 2f 00 5e 00 nop || nop + 17c0: 2f 00 5e 00 nop || nop + 17c4: 2f 00 5e 00 nop || nop + 17c8: e5 80 00 06 brf0t.l 17e0 + 17cc: 2f 00 5e 00 nop || nop + 17d0: 2f 00 5e 00 nop || nop + 17d4: e5 80 00 03 brf0t.l 17e0 + 17d8: 2f 00 5e 00 nop || nop + 17dc: 2f 00 5e 00 nop || nop + 17e0: 2f 00 5e 00 nop || nop + 17e4: 2f 00 5e 00 nop || nop +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/label-001.s b/gas/testsuite/gas/d10v/label-001.s new file mode 100644 index 0000000000..371b30529a --- /dev/null +++ b/gas/testsuite/gas/d10v/label-001.s @@ -0,0 +1,3132 @@ + .text + .align 2 +L0: + nop + nop + .align 2 +L1: + nop + nop + .align 2 +L2: + nop + nop + .align 2 +L3: + nop + nop + .align 2 +L4: + nop + nop + .align 2 +L5: + nop + nop + .align 2 +L6: + nop + nop + .align 2 +L7: + nop + nop + .align 2 +L8: + nop + nop + .align 2 +L9: + nop + nop + .align 2 +L10: + nop + nop + .align 2 +L11: + nop + nop + .align 2 +L12: + nop + nop + .align 2 +L13: + nop + nop + .align 2 +L14: + nop + nop + .align 2 +L15: + nop + nop + .align 2 +L16: + nop + nop + .align 2 +L17: + nop + nop + .align 2 +L18: + nop + nop + .align 2 +L19: + nop + nop + .align 2 +L20: + nop + nop + .align 2 +L21: + nop + nop + .align 2 +L22: + nop + nop + .align 2 +L23: + nop + nop + .align 2 +L24: + nop + nop + .align 2 +L25: + nop + nop + .align 2 +L26: + nop + nop + .align 2 +L27: + nop + nop + .align 2 +L28: + nop + nop + .align 2 +L29: + nop + nop + .align 2 +L30: + nop + nop + .align 2 +L31: + nop + nop + .align 2 +L32: + nop + nop + .align 2 +L33: + nop + nop + .align 2 +L34: + nop + nop + .align 2 +L35: + nop + nop + nop + nop + ldi r0,#.L_error + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + .align 2 +L36: + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + brf0t .L_error + nop + nop + nop + nop + brf0t .L_error + nop + nop + nop +; jmp r13 +.L_error: + nop + nop + nop + nop diff --git a/gas/testsuite/gas/d10v/warning-001.d b/gas/testsuite/gas/d10v/warning-001.d new file mode 100644 index 0000000000..5ef473c36e --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-001.d @@ -0,0 +1,2 @@ +#source: warning-001.s +#error : cr6 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-001.s b/gas/testsuite/gas/d10v/warning-001.s new file mode 100644 index 0000000000..20abad7d59 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-001.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvfc r0,cr6 diff --git a/gas/testsuite/gas/d10v/warning-002.d b/gas/testsuite/gas/d10v/warning-002.d new file mode 100644 index 0000000000..c331e69151 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-002.d @@ -0,0 +1,2 @@ +#source: warning-002.s +#error : cr6 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-002.s b/gas/testsuite/gas/d10v/warning-002.s new file mode 100644 index 0000000000..0b19a8cbd0 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-002.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvtc r0,cr6 diff --git a/gas/testsuite/gas/d10v/warning-003.d b/gas/testsuite/gas/d10v/warning-003.d new file mode 100644 index 0000000000..4282e13b0d --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-003.d @@ -0,0 +1,2 @@ +#source: warning-003.s +#error : cr12 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-003.s b/gas/testsuite/gas/d10v/warning-003.s new file mode 100644 index 0000000000..e6490238da --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-003.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvfc r0,cr12 diff --git a/gas/testsuite/gas/d10v/warning-004.d b/gas/testsuite/gas/d10v/warning-004.d new file mode 100644 index 0000000000..193a843277 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-004.d @@ -0,0 +1,2 @@ +#source: warning-004.s +#error : cr12 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-004.s b/gas/testsuite/gas/d10v/warning-004.s new file mode 100644 index 0000000000..2b2393dd1e --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-004.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvtc r0,cr12 diff --git a/gas/testsuite/gas/d10v/warning-005.d b/gas/testsuite/gas/d10v/warning-005.d new file mode 100644 index 0000000000..77592712a2 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-005.d @@ -0,0 +1,2 @@ +#source: warning-005.s +#error : Warning: cr13 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-005.s b/gas/testsuite/gas/d10v/warning-005.s new file mode 100644 index 0000000000..f7bc22d6ca --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-005.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvfc r0,cr13 diff --git a/gas/testsuite/gas/d10v/warning-006.d b/gas/testsuite/gas/d10v/warning-006.d new file mode 100644 index 0000000000..50656fb797 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-006.d @@ -0,0 +1,2 @@ +#source: warning-006.s +#error : cr13 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-006.s b/gas/testsuite/gas/d10v/warning-006.s new file mode 100644 index 0000000000..1364f94a86 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-006.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvtc r0,cr13 diff --git a/gas/testsuite/gas/d10v/warning-007.d b/gas/testsuite/gas/d10v/warning-007.d new file mode 100644 index 0000000000..1ab4879dd2 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-007.d @@ -0,0 +1,2 @@ +#source: warning-007.s +#error : Warning: cr13 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-007.s b/gas/testsuite/gas/d10v/warning-007.s new file mode 100644 index 0000000000..f7bc22d6ca --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-007.s @@ -0,0 +1,4 @@ + .text + .global foo +foo: + mvfc r0,cr13 diff --git a/gas/testsuite/gas/d10v/warning-008.d b/gas/testsuite/gas/d10v/warning-008.d new file mode 100644 index 0000000000..30211ab297 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-008.d @@ -0,0 +1,2 @@ +#source: warning-008.s +#error : cr15 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-008.s b/gas/testsuite/gas/d10v/warning-008.s new file mode 100644 index 0000000000..ea22a08f00 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-008.s @@ -0,0 +1,5 @@ + .text + .global foo +foo: + mvfc r0,cr15 + diff --git a/gas/testsuite/gas/d10v/warning-009.d b/gas/testsuite/gas/d10v/warning-009.d new file mode 100644 index 0000000000..695fc77b9c --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-009.d @@ -0,0 +1,2 @@ +#source: warning-009.s +#error : cr15 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-009.s b/gas/testsuite/gas/d10v/warning-009.s new file mode 100644 index 0000000000..e033e5c152 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-009.s @@ -0,0 +1,5 @@ + .text + .global foo +foo: + mvtc r0,cr15 + diff --git a/gas/testsuite/gas/d10v/warning-010.d b/gas/testsuite/gas/d10v/warning-010.d new file mode 100644 index 0000000000..44e1e30e51 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-010.d @@ -0,0 +1,2 @@ +#source: warning-010.s +#error : cr4 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-010.s b/gas/testsuite/gas/d10v/warning-010.s new file mode 100644 index 0000000000..797614d261 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-010.s @@ -0,0 +1,6 @@ + .text + .global foo +foo: + mvfc r0,cr4 + + diff --git a/gas/testsuite/gas/d10v/warning-011.d b/gas/testsuite/gas/d10v/warning-011.d new file mode 100644 index 0000000000..12a3c04bcd --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-011.d @@ -0,0 +1,2 @@ +#source: warning-011.s +#error : cr4 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-011.s b/gas/testsuite/gas/d10v/warning-011.s new file mode 100644 index 0000000000..34061d7a11 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-011.s @@ -0,0 +1,7 @@ + .text + .global foo +foo: + mvtc r0,dpsw ;; cr4=dpsw + + + diff --git a/gas/testsuite/gas/d10v/warning-012.d b/gas/testsuite/gas/d10v/warning-012.d new file mode 100644 index 0000000000..2e4dcbb8fe --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-012.d @@ -0,0 +1,2 @@ +#source: warning-012.s +#error : cr5 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-012.s b/gas/testsuite/gas/d10v/warning-012.s new file mode 100644 index 0000000000..93b08757aa --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-012.s @@ -0,0 +1,6 @@ + .text + .global foo +foo: + mvfc r0,cr5 + + diff --git a/gas/testsuite/gas/d10v/warning-013.d b/gas/testsuite/gas/d10v/warning-013.d new file mode 100644 index 0000000000..86754289f4 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-013.d @@ -0,0 +1,2 @@ +#source: warning-013.s +#error : cr5 is a reserved control register diff --git a/gas/testsuite/gas/d10v/warning-013.s b/gas/testsuite/gas/d10v/warning-013.s new file mode 100644 index 0000000000..8ebe7bdd87 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-013.s @@ -0,0 +1,6 @@ + .text + .global foo +foo: + mvtc r0,dpc ;; cr5=dpc + + diff --git a/gas/testsuite/gas/d10v/warning-014.d b/gas/testsuite/gas/d10v/warning-014.d new file mode 100644 index 0000000000..2fbcbcb7fa --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-014.d @@ -0,0 +1,11 @@ +#objdump: -D +#source: warning-014.s + +.*: file format elf32-d10v + +Disassembly of section .text: + +00000000 : + 0: 30 12 8e 2d ld r1, @r2+ || btsti r1, 0x6 + 4: 01 12 0e 2d add r1, r2 || btsti r1, 0x6 +Disassembly of section .data: diff --git a/gas/testsuite/gas/d10v/warning-014.s b/gas/testsuite/gas/d10v/warning-014.s new file mode 100644 index 0000000000..2f51b0108f --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-014.s @@ -0,0 +1,8 @@ +; btsti does not modify r1 +; There is no resource conflict so no warning. + + .text +foo: + ld r1,@r2+ || btsti r1 , #6 + add r1,r2 || btsti r1 , #6 + diff --git a/gas/testsuite/gas/d10v/warning-015.d b/gas/testsuite/gas/d10v/warning-015.d new file mode 100644 index 0000000000..ff4a97ca99 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-015.d @@ -0,0 +1,2 @@ +#source: instruction_packing-002.s +#error : Warning: resource conflict \(C flag\) diff --git a/gas/testsuite/gas/d10v/warning-016.d b/gas/testsuite/gas/d10v/warning-016.d new file mode 100644 index 0000000000..f833369cc3 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-016.d @@ -0,0 +1,2 @@ +#source: warning-016.s +#error : Warning: resource conflict \(F flag\) diff --git a/gas/testsuite/gas/d10v/warning-016.s b/gas/testsuite/gas/d10v/warning-016.s new file mode 100644 index 0000000000..a2c2b77f1a --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-016.s @@ -0,0 +1,6 @@ + ;; F flag conflict + + .text +foo: + cmpeqi r0,#0x0 || cmpeqi r1,#0x1 + \ No newline at end of file diff --git a/gas/testsuite/gas/d10v/warning-017.d b/gas/testsuite/gas/d10v/warning-017.d new file mode 100644 index 0000000000..a8aed683c2 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-017.d @@ -0,0 +1,2 @@ +#source: warning-017.s +#error : Warning: resource conflict \(C flag\) diff --git a/gas/testsuite/gas/d10v/warning-017.s b/gas/testsuite/gas/d10v/warning-017.s new file mode 100644 index 0000000000..a31726888b --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-017.s @@ -0,0 +1,6 @@ + ;; C flag conflict + + .text +foo: + add r0,r1 || add r2,r3 + \ No newline at end of file diff --git a/gas/testsuite/gas/d10v/warning-018.d b/gas/testsuite/gas/d10v/warning-018.d new file mode 100644 index 0000000000..40b1106182 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-018.d @@ -0,0 +1,2 @@ +#source: warning-018.s +#error : Warning: resource conflict \(C flag\) diff --git a/gas/testsuite/gas/d10v/warning-018.s b/gas/testsuite/gas/d10v/warning-018.s new file mode 100644 index 0000000000..5bfb3b3d8e --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-018.s @@ -0,0 +1,6 @@ + ;; C flag conflict + + .text +foo: + sub r0,r1 || sub r2,r3 + \ No newline at end of file diff --git a/gas/testsuite/gas/d10v/warning-019.d b/gas/testsuite/gas/d10v/warning-019.d new file mode 100644 index 0000000000..6388751887 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-019.d @@ -0,0 +1,2 @@ +#source: warning-019.s +#error : Warning: resource conflict \(R0\) diff --git a/gas/testsuite/gas/d10v/warning-019.s b/gas/testsuite/gas/d10v/warning-019.s new file mode 100644 index 0000000000..63ae72b626 --- /dev/null +++ b/gas/testsuite/gas/d10v/warning-019.s @@ -0,0 +1,6 @@ + ;; Dest reg conflict + + .text +foo: + add r0,r1 || mv r0,r2 + \ No newline at end of file diff --git a/gas/testsuite/lib/gas-defs.exp b/gas/testsuite/lib/gas-defs.exp index 777c0e17f3..31743ac34f 100644 --- a/gas/testsuite/lib/gas-defs.exp +++ b/gas/testsuite/lib/gas-defs.exp @@ -233,6 +233,11 @@ proc gas_init { args } { # Assemble the file SOURCE.s. If omitted, this defaults to FILE.s. # This is useful if several .d files want to share a .s file. # +# error: REGEX +# An error with message matching REGEX must be emitted for the test +# to pass. The PROG, objdump, nm and objcopy options have no +# meaning and need not supplied if this is present. +# # Each option may occur at most once. # # After the option lines come regexp lines. `run_dump_test' calls @@ -267,6 +272,7 @@ proc run_dump_test { name } { set opts(PROG) {} set opts(source) {} set opts(stderr) {} + set opts(error) {} foreach i $opt_array { set opt_name [lindex $i 0] @@ -299,6 +305,10 @@ proc run_dump_test { name } { unresolved $subdir/$name return } } + } elseif { $opts(error) != "" } { + # It's meaningless to require an output-testing method when we + # expect an error. For simplicity, we fake an arbitrary method. + set program "nm" } else { # Guess which program to run, by seeing which option was specified. set program "" @@ -343,6 +353,14 @@ proc run_dump_test { name } { if { $opts(stderr) == "" } then { send_log "$comp_output\n" verbose "$comp_output" 3 + + if { $opts(error) != "" } { + verbose -log "failed with: <$comp_output>, expected: <$opts(error)>" + if [regexp $opts(error) $comp_output] { + pass $testname + return + } + } fail $testname return } else { @@ -359,6 +377,13 @@ proc run_dump_test { name } { send_log "wrote pruned stderr to dump.stderr\n" verbose "wrote pruned stderr to dump.stderr" 3 if { [regexp_diff "dump.stderr" "$stderrfile"] } then { + if { $opts(error) != "" } { + verbose -log "failed with: <$comp_output>, expected: <$opts(error)>" + if [regexp $opts(error) $comp_output] { + pass $testname + return + } + } fail $testname verbose "pruned stderr is [file_contents "dump.stderr"]" 2 return