We planned to upgrade GitLab and Mattermost to the latest version this Friday morning (early). You may experience some downtime!

Commit 712c940d authored by Arjan Oortgiese's avatar Arjan Oortgiese

Added ARM graph copy interface from SVN...

Added ARM graph copy interface from SVN (https://svn.cs.ru.nl/repos/clean-libraries/trunk/Libraries/graph_copy/)
parent b1f7bcfe
# Build graph_copy for Linux ARM devices (e.g. Android or Raspberry Pi)
CC=gcc
AS=as
OUTDIR="Clean System Files"
all: copy_graph_to_string.o copy_string_to_graph.o copy_graph_to_string_interface.o copy_string_to_graph_interface.o
copy_graph_to_string.o: ../common/copy_graph_to_string.c
mkdir -p $(OUTDIR)
$(CC) $(CFLAGS) -fomit-frame-pointer -O -c -DLINUX32 ../common/copy_graph_to_string.c -o $(OUTDIR)/copy_graph_to_string.o
copy_string_to_graph.o: ../common/copy_string_to_graph.c
mkdir -p $(OUTDIR)
$(CC) $(CFLAGS) -fomit-frame-pointer -O -c -DLINUX32 ../common/copy_string_to_graph.c -o $(OUTDIR)/copy_string_to_graph.o
copy_graph_to_string_interface.o: copy_graph_to_string_interface_linux_arm.s
mkdir -p $(OUTDIR)
$(AS) $(ASFLAGS) copy_graph_to_string_interface_linux_arm.s -o $(OUTDIR)/copy_graph_to_string_interface.o
copy_string_to_graph_interface.o: copy_string_to_graph_interface_linux_arm.s
mkdir -p $(OUTDIR)
$(AS) $(ASFLAGS) copy_string_to_graph_interface_linux_arm.s -o $(OUTDIR)/copy_string_to_graph_interface.o
.globl copy_graph_to_string
.globl remove_forwarding_pointers_from_graph
.globl collect_1
.text
.globl __copy__graph__to__string
__copy__graph__to__string:
add r2,r10,r5,lsl #2
mov r1,r10
mov r0,r6
mov r11,sp
bic sp,sp,#4
bl copy_graph_to_string
mov sp,r11
str r0,[sp,#-4]!
add r1,r10,r5,lsl #2
mov r0,r6
mov r11,sp
bic sp,sp,#4
bl remove_forwarding_pointers_from_graph
mov sp,r11
ldr r7,[sp],#4
cmp r7,#0
bne __copy__graph__to__string_1
add r4,r5,#1
sub r5,r5,r4
bl collect_1
add r5,r5,r4
b __copy__graph__to__string
__copy__graph__to__string_1:
ldr r4,[r7,#4]
mov r6,r7
add r4,r4,#8+3
and r3,r4,#-4
add r10,r10,r3
sub r5,r5,r4,lsr #2
ldr pc,[sp],#4
.globl collect_1
.globl copy_string_to_graph
.globl remove_forwarding_pointers_from_string
.text
.globl __copy__string__to__graph
__copy__string__to__graph:
sub sp,sp,#4
mov r3,sp
add r2,r10,r5,lsl #2
mov r1,r10
mov r0,r6
mov r11,sp
bic sp,sp,#4
bl copy_string_to_graph
mov sp,r11
tst r0,#1
beq __copy__string__to__graph_1
ldr r7,[sp],#4
and r1,r0,#-4
mov r0,r6
mov r11,sp
bic sp,sp,#4
bl remove_forwarding_pointers_from_string
mov sp,r11
sub r4,r7,r10
sub r5,r5,r4
bl collect_1
add r5,r5,r4
b __copy__string__to__graph
__copy__string__to__graph_1:
ldr r12,[sp],#4
mov r6,r0
sub r4,r12,r10
mov r10,r12
sub r5,r5,r4,lsr #2
ldr pc,[sp],#4
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment