Skip to content

Commit 259aa0e

Browse files
committed
test: add test programs
1 parent 3a92ef4 commit 259aa0e

5 files changed

Lines changed: 52 additions & 1 deletion

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,6 @@ Cargo.lock
2323
# Added by cargo
2424

2525
/target
26+
27+
# temporary files
28+
*.bin

test/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# gcc -S add.c -O0 -o add.x86.s
2+
# gcc add.x86.s -no-pie -o add.x86.bin
3+
# ./add.x86.bin
4+
# echo $?

test/add.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
void main(void) {
1+
int main(void) {
22
int x = 3;
33
int y = 4;
44

test/add.riscv.s

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
main:
2+
addi sp,sp,-32
3+
sd ra,24(sp)
4+
sd s0,16(sp)
5+
addi s0,sp,32
6+
li a5,3
7+
sw a5,-20(s0)
8+
li a5,4
9+
sw a5,-24(s0)
10+
lw a5,-20(s0)
11+
mv a4,a5
12+
lw a5,-24(s0)
13+
addw a5,a4,a5
14+
sext.w a5,a5
15+
mv a0,a5
16+
ld ra,24(sp)
17+
ld s0,16(sp)
18+
addi sp,sp,32
19+
jr ra

test/add.x86.s

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
.file "add.c"
2+
.text
3+
.globl main
4+
.type main, @function
5+
main:
6+
.LFB0:
7+
.cfi_startproc
8+
pushq %rbp
9+
.cfi_def_cfa_offset 16
10+
.cfi_offset 6, -16
11+
movq %rsp, %rbp
12+
.cfi_def_cfa_register 6
13+
movl $3, -8(%rbp)
14+
movl $4, -4(%rbp)
15+
movl -8(%rbp), %edx
16+
movl -4(%rbp), %eax
17+
addl %edx, %eax
18+
popq %rbp
19+
.cfi_def_cfa 7, 8
20+
ret
21+
.cfi_endproc
22+
.LFE0:
23+
.size main, .-main
24+
.ident "GCC: (GNU) 13.3.0"
25+
.section .note.GNU-stack,"",@progbits

0 commit comments

Comments
 (0)