diff options
author | Filip Czaplicki <filipczaplicki@gmail.com> | 2020-10-04 22:53:29 +0200 |
---|---|---|
committer | David Peter <sharkdp@users.noreply.github.com> | 2020-10-05 07:12:24 +0200 |
commit | db3468a815ff7886a7ced0f902a0f1fdf2e3dd51 (patch) | |
tree | 28821417d30e42912e58b0f5ee667f29281252c6 | |
parent | 3aabed44cec6c0fc3c1e32a26e24e856c0f3a935 (diff) |
test: ARM Assembly syntax test file
-rw-r--r-- | tests/syntax-tests/highlighted/ARM Assembly/test.S | 55 | ||||
-rw-r--r-- | tests/syntax-tests/source/ARM Assembly/test.S | 55 |
2 files changed, 110 insertions, 0 deletions
diff --git a/tests/syntax-tests/highlighted/ARM Assembly/test.S b/tests/syntax-tests/highlighted/ARM Assembly/test.S new file mode 100644 index 00000000..6ebae0f2 --- /dev/null +++ b/tests/syntax-tests/highlighted/ARM Assembly/test.S @@ -0,0 +1,55 @@ +[38;2;248;248;242m.[0m[38;2;248;248;242mdata[0m + +[38;2;249;38;114m.balign[0m[38;2;190;132;255m 4[0m +[38;2;248;248;242mred[0m[38;2;248;248;242m: [0m[38;2;249;38;114m.word[0m[38;2;190;132;255m 0[0m +[38;2;248;248;242mgreen[0m[38;2;248;248;242m: [0m[38;2;249;38;114m.word[0m[38;2;190;132;255m 0[0m +[38;2;248;248;242mblue[0m[38;2;248;248;242m: [0m[38;2;249;38;114m.word[0m[38;2;190;132;255m 0[0m + +[38;2;249;38;114m.text[0m +[38;2;249;38;114m.global[0m[38;2;248;248;242m [0m[38;2;248;248;242mgrayscale[0m +[38;2;249;38;114m.func[0m[38;2;248;248;242m [0m[38;2;248;248;242mgrayscale[0m + +[38;2;248;248;242mgrayscale[0m[38;2;248;248;242m:[0m +[38;2;248;248;242massign[0m[38;2;248;248;242m:[0m +[38;2;248;248;242m [0m[38;2;117;113;94m/* some comment */[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mip[0m[38;2;248;248;242m, [0m[38;2;248;248;242maddr_red[0m +[38;2;248;248;242m [0m[38;2;102;217;239mstr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr3[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mip[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mip[0m[38;2;248;248;242m, [0m[38;2;248;248;242maddr_green[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldmfd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr13[0m[38;2;248;248;242m!, {[0m[38;2;248;248;242mr3[0m[38;2;248;248;242m}[0m +[38;2;248;248;242m [0m[38;2;102;217;239mstr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr3[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mip[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mip[0m[38;2;248;248;242m, [0m[38;2;248;248;242maddr_blue[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldmfd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr13[0m[38;2;248;248;242m!, {[0m[38;2;248;248;242mr3[0m[38;2;248;248;242m}[0m +[38;2;248;248;242m [0m[38;2;102;217;239mstr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr3[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mip[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mstmfd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr13[0m[38;2;248;248;242m!, {[0m[38;2;248;248;242mr4[0m[38;2;248;248;242m-[0m[38;2;248;248;242mr8[0m[38;2;248;248;242m}[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mip[0m[38;2;248;248;242m, [0m[38;2;248;248;242maddr_red[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr3[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mip[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mip[0m[38;2;248;248;242m, [0m[38;2;248;248;242maddr_green[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr4[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mip[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mip[0m[38;2;248;248;242m, [0m[38;2;248;248;242maddr_blue[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr5[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mip[0m[3;38;2;102;217;239m][0m[38;2;248;248;242m [0m[38;2;117;113;94m/* another comment */[0m +[38;2;248;248;242mgrayscale_loop[0m[38;2;248;248;242m:[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldrb[0m[38;2;248;248;242m [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mr1[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mmul[0m[38;2;248;248;242m [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr3[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr6[0m +[38;2;248;248;242m [0m[38;2;102;217;239madd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr1[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr1[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #1[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldrb[0m[38;2;248;248;242m [0m[38;2;248;248;242mr7[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mr1[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mmul[0m[38;2;248;248;242m [0m[38;2;248;248;242mr7[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr4[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr7[0m +[38;2;248;248;242m [0m[38;2;102;217;239madd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr1[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr1[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #1[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldrb[0m[38;2;248;248;242m [0m[38;2;248;248;242mr8[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mr1[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239mmul[0m[38;2;248;248;242m [0m[38;2;248;248;242mr8[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr5[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr8[0m +[38;2;248;248;242m [0m[38;2;102;217;239madd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr1[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr1[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #1[0m +[38;2;248;248;242m [0m[38;2;102;217;239madd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr7[0m +[38;2;248;248;242m [0m[38;2;102;217;239madd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr8[0m +[38;2;248;248;242m [0m[38;2;102;217;239masr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #8[0m +[38;2;248;248;242m [0m[38;2;102;217;239mstr[0m[38;2;248;248;242m [0m[38;2;248;248;242mr6[0m[38;2;248;248;242m,[0m[3;38;2;102;217;239m [[0m[3;38;2;102;217;239mr2[0m[3;38;2;102;217;239m][0m +[38;2;248;248;242m [0m[38;2;102;217;239madd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr2[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr2[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #1[0m +[38;2;248;248;242m [0m[38;2;102;217;239msub[0m[38;2;248;248;242m [0m[38;2;248;248;242mr0[0m[38;2;248;248;242m, [0m[38;2;248;248;242mr0[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #1[0m +[38;2;248;248;242m [0m[38;2;102;217;239mcmp[0m[38;2;248;248;242m [0m[38;2;248;248;242mr0[0m[38;2;248;248;242m,[0m[38;2;190;132;255m #0[0m +[38;2;248;248;242m [0m[38;2;102;217;239mbne[0m[38;2;248;248;242m [0m[38;2;248;248;242mgrayscale_loop[0m +[38;2;248;248;242m [0m[38;2;102;217;239mldmfd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr13[0m[38;2;248;248;242m!, {[0m[38;2;248;248;242mr4[0m[38;2;248;248;242m-[0m[38;2;248;248;242mr8[0m[38;2;248;248;242m}[0m +[38;2;248;248;242m [0m[38;2;102;217;239mstmfd[0m[38;2;248;248;242m [0m[38;2;248;248;242mr13[0m[38;2;248;248;242m!, {[0m[38;2;248;248;242mr0[0m[38;2;248;248;242m-[0m[38;2;248;248;242mr1[0m[38;2;248;248;242m}[0m +[38;2;248;248;242m [0m[38;2;102;217;239mbx[0m[38;2;248;248;242m [0m[38;2;248;248;242mlr[0m + +[38;2;248;248;242maddr_red[0m[38;2;248;248;242m: [0m[38;2;249;38;114m.word[0m[38;2;248;248;242m [0m[38;2;248;248;242mred[0m +[38;2;248;248;242maddr_green[0m[38;2;248;248;242m: [0m[38;2;249;38;114m.word[0m[38;2;248;248;242m [0m[38;2;248;248;242mgreen[0m +[38;2;248;248;242maddr_blue[0m[38;2;248;248;242m: [0m[38;2;249;38;114m.word[0m[38;2;248;248;242m [0m[38;2;248;248;242mblue[0m + diff --git a/tests/syntax-tests/source/ARM Assembly/test.S b/tests/syntax-tests/source/ARM Assembly/test.S new file mode 100644 index 00000000..387755a0 --- /dev/null +++ b/tests/syntax-tests/source/ARM Assembly/test.S @@ -0,0 +1,55 @@ +.data + +.balign 4 +red: .word 0 +green: .word 0 +blue: .word 0 + +.text +.global grayscale +.func grayscale + +grayscale: +assign: + /* some comment */ + ldr ip, addr_red + str r3, [ip] + ldr ip, addr_green + ldmfd r13!, {r3} + str r3, [ip] + ldr ip, addr_blue + ldmfd r13!, {r3} + str r3, [ip] + stmfd r13!, {r4-r8} + ldr ip, addr_red + ldr r3, [ip] + ldr ip, addr_green + ldr r4, [ip] + ldr ip, addr_blue + ldr r5, [ip] /* another comment */ +grayscale_loop: + ldrb r6, [r1] + mul r6, r3, r6 + add r1, r1, #1 + ldrb r7, [r1] + mul r7, r4, r7 + add r1, r1, #1 + ldrb r8, [r1] + mul r8, r5, r8 + add r1, r1, #1 + add r6, r6, r7 + add r6, r6, r8 + asr r6, r6, #8 + str r6, [r2] + add r2, r2, #1 + sub r0, r0, #1 + cmp r0, #0 + bne grayscale_loop + ldmfd r13!, {r4-r8} + stmfd r13!, {r0-r1} + bx lr + +addr_red: .word red +addr_green: .word green +addr_blue: .word blue + |