Update -arm patch to really use the EABI and hopefully fix clisp.
This commit is contained in:
parent
dd17361a84
commit
cbbc846398
|
@ -1,40 +1,93 @@
|
|||
--- ./callback/trampoline_r/cache-armel.c.orig 2009-04-27 10:44:13.000000000 -0600
|
||||
+++ ./callback/trampoline_r/cache-armel.c 2013-09-04 14:40:00.000000000 -0600
|
||||
@@ -15,5 +15,5 @@ void __TR_clear_cache (char *first_addr,
|
||||
register unsigned long _beg __asm ("a1") = first_addr;
|
||||
register unsigned long _end __asm ("a2") = last_addr;
|
||||
+++ ./callback/trampoline_r/cache-armel.c 2013-09-06 11:00:00.000000000 -0600
|
||||
@@ -12,8 +12,9 @@
|
||||
|
||||
void __TR_clear_cache (char *first_addr, char *last_addr)
|
||||
{
|
||||
- register unsigned long _beg __asm ("a1") = first_addr;
|
||||
- register unsigned long _end __asm ("a2") = last_addr;
|
||||
+ register unsigned long _beg __asm ("a1") = (unsigned long) first_addr;
|
||||
+ register unsigned long _end __asm ("a2") = (unsigned long) last_addr;
|
||||
register unsigned long _flg __asm ("a3") = 0;
|
||||
- __asm __volatile__ ("swi 0x9f0002" : : "r" (_beg), "r" (_end), "r" (_flg));
|
||||
+ __asm __volatile__ ("swi 0x0f0002" : : "r" (_beg), "r" (_end), "r" (_flg));
|
||||
+ register unsigned long _sys __asm ("r7") = __ARM_NR_cacheflush;
|
||||
+ __asm __volatile__ ("swi 0x0" : "=r" (_beg) : "0" (_beg), "r" (_end), "r" (_flg), "r" (_sys));
|
||||
}
|
||||
--- ./callback/trampoline_r/cache-armel.s.orig 2009-04-27 10:44:13.000000000 -0600
|
||||
+++ ./callback/trampoline_r/cache-armel.s 2013-09-04 14:40:00.000000000 -0600
|
||||
@@ -12,7 +12,7 @@ __TR_clear_cache:
|
||||
@ lr needed for prologue
|
||||
+++ ./callback/trampoline_r/cache-armel.s 2013-09-06 11:00:00.000000000 -0600
|
||||
@@ -1,5 +1,5 @@
|
||||
- .cpu arm10tdmi
|
||||
- .fpu softvfp
|
||||
+ .cpu armv7-a
|
||||
+ .fpu vfpv3-d16
|
||||
.file "cache-armel.c"
|
||||
.text
|
||||
.align 2
|
||||
@@ -9,10 +9,13 @@ __TR_clear_cache:
|
||||
@ args = 0, pretend = 0, frame = 0
|
||||
@ frame_needed = 0, uses_anonymous_args = 0
|
||||
@ link register save eliminated.
|
||||
- @ lr needed for prologue
|
||||
+ str r7, [sp, #-4]!
|
||||
mov r2, #0
|
||||
+ mov r7, #2
|
||||
+ movt r7, 15
|
||||
#APP
|
||||
- swi 0x9f0002
|
||||
+ swi 0x0f0002
|
||||
+ swi 0x0
|
||||
+ ldr r7, [sp], #4
|
||||
bx lr
|
||||
.size __TR_clear_cache, .-__TR_clear_cache
|
||||
.ident "GCC: (GNU) 3.4.4 (release) (CodeSourcery ARM 2005q3-2)"
|
||||
- .ident "GCC: (GNU) 3.4.4 (release) (CodeSourcery ARM 2005q3-2)"
|
||||
+ .ident "GCC: (GNU) 4.8.1 20130829 (Red Hat 4.8.1-7)"
|
||||
--- ./trampoline/cache-armel.c.orig 2009-04-27 10:44:14.000000000 -0600
|
||||
+++ ./trampoline/cache-armel.c 2013-09-04 14:40:00.000000000 -0600
|
||||
@@ -15,5 +15,5 @@ void __TR_clear_cache (char *first_addr,
|
||||
register unsigned long _beg __asm ("a1") = first_addr;
|
||||
register unsigned long _end __asm ("a2") = last_addr;
|
||||
+++ ./trampoline/cache-armel.c 2013-09-06 11:00:00.000000000 -0600
|
||||
@@ -12,8 +12,9 @@
|
||||
|
||||
void __TR_clear_cache (char *first_addr, char *last_addr)
|
||||
{
|
||||
- register unsigned long _beg __asm ("a1") = first_addr;
|
||||
- register unsigned long _end __asm ("a2") = last_addr;
|
||||
+ register unsigned long _beg __asm ("a1") = (unsigned long) first_addr;
|
||||
+ register unsigned long _end __asm ("a2") = (unsigned long) last_addr;
|
||||
register unsigned long _flg __asm ("a3") = 0;
|
||||
- __asm __volatile__ ("swi 0x9f0002" : : "r" (_beg), "r" (_end), "r" (_flg));
|
||||
+ __asm __volatile__ ("swi 0x0f0002" : : "r" (_beg), "r" (_end), "r" (_flg));
|
||||
+ register unsigned long _sys __asm ("r7") = __ARM_NR_cacheflush;
|
||||
+ __asm __volatile__ ("swi 0x0" : "=r" (_beg) : "0" (_beg), "r" (_end), "r" (_flg), "r" (_sys));
|
||||
}
|
||||
--- ./trampoline/cache-armel.s.orig 2009-04-27 10:44:14.000000000 -0600
|
||||
+++ ./trampoline/cache-armel.s 2013-09-04 14:40:00.000000000 -0600
|
||||
@@ -17,7 +17,7 @@ __TR_clear_cache:
|
||||
ldr r1, [sp, #0]
|
||||
+++ ./trampoline/cache-armel.s 2013-09-06 11:00:00.000000000 -0600
|
||||
@@ -1,24 +1,21 @@
|
||||
- .cpu arm10tdmi
|
||||
- .fpu softvfp
|
||||
+ .cpu armv7-a
|
||||
+ .fpu vfpv3-d16
|
||||
.file "cache-armel.c"
|
||||
.text
|
||||
.align 2
|
||||
.global __TR_clear_cache
|
||||
.type __TR_clear_cache, %function
|
||||
__TR_clear_cache:
|
||||
- @ args = 0, pretend = 0, frame = 8
|
||||
+ @ args = 0, pretend = 0, frame = 0
|
||||
@ frame_needed = 0, uses_anonymous_args = 0
|
||||
@ link register save eliminated.
|
||||
- sub sp, sp, #8
|
||||
- @ lr needed for prologue
|
||||
- str r0, [sp, #4]
|
||||
- str r1, [sp, #0]
|
||||
- ldr r0, [sp, #4]
|
||||
- ldr r1, [sp, #0]
|
||||
+ str r7, [sp, #-4]!
|
||||
mov r2, #0
|
||||
+ mov r7, #2
|
||||
+ movt r7, 15
|
||||
#APP
|
||||
- swi 0x9f0002
|
||||
+ swi 0x0f0002
|
||||
add sp, sp, #8
|
||||
- add sp, sp, #8
|
||||
+ swi 0x0
|
||||
+ ldr r7, [sp], #4
|
||||
bx lr
|
||||
.size __TR_clear_cache, .-__TR_clear_cache
|
||||
- .ident "GCC: (GNU) 3.4.4 (release) (CodeSourcery ARM 2005q3-2)"
|
||||
+ .ident "GCC: (GNU) 4.8.1 20130829 (Red Hat 4.8.1-7)"
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
Name: ffcall
|
||||
Version: 1.10
|
||||
Release: 12.20120424cvs%{?dist}
|
||||
Release: 13.20120424cvs%{?dist}
|
||||
Summary: Libraries for foreign function call interfaces
|
||||
|
||||
Group: System Environment/Libraries
|
||||
|
@ -89,6 +89,9 @@ done
|
|||
|
||||
|
||||
%changelog
|
||||
* Fri Sep 6 2013 Jerry James <loganjerry@gmail.com> - 1.10-13.20120424cvs
|
||||
- Update -arm patch to really use the EABI and hopefully fix clisp
|
||||
|
||||
* Wed Sep 4 2013 Jerry James <loganjerry@gmail.com> - 1.10-12.20120424cvs
|
||||
- Add -arm patch to fix clisp build failure
|
||||
|
||||
|
|
Loading…
Reference in New Issue