Re: Test failure on ARM
Jerry James <[email protected]>
| Newsgroups | gmane.lisp.clisp.devel |
|---|---|
| Message-ID | <CAHCOHQ=+qyagLKLTMmqFx0HL1e3TWGYR+6zcMU8XKaDa2MnToA@mail.gmail.com> |
On Mon, Apr 23, 2012 at 12:49 PM, Sam Steingold <[email protected]> wrote: >> * Jerry James <[email protected]> [2012-04-23 10:56:12 -0600]: >> I was afraid that would be the answer. :-) I'll see if I can get >> access to some ARM hardware so I can get more details on the problem. > > Please file the bug report on > https://savannah.gnu.org/bugs/?func=additem&group=libffcall > and put the patches there too! > >> In the meantime, I'll turn FFI off for the ARM platform to get the >> builds going again. Wish me luck. > > Good luck! I finally got around to figuring out how to create an ARM VM with qemu. I've got the upcoming Fedora 17 release running on that VM. The problem is not in ffcall after all. The illegal instruction error is occurring on the very last instruction of copy_loop_up_l2() in src/ariarm.d. A disassembly with GDB shows: 0x00106b3c <+0>: ldm r0!, {r2, r4, r12, lr} 0x00106b40 <+4>: stmia r1!, {r2, r4, r12, lr} 0x00106b44 <+8>: subs r3, r3, #8 0x00106b48 <+12>: ldmge r0!, {r2, r4, r12, lr} 0x00106b4c <+16>: stmiage r1!, {r2, r4, r12, lr} 0x00106b50 <+20>: bgt 0x106b3c <copy_loop_up_l2> 0x00106b54 <+24>: mov r0, r1 0x00106b58 <+28>: ldm sp!, {r4, pc}^ It's that last ldm instruction, at +28, that is the problem. Also, I see this from compilation of src/ariarm.s: ariarm.s: Assembler messages: ariarm.s:1: Warning: ignoring attempt to redefine built-in register 'a1' ariarm.s:2: Warning: ignoring attempt to redefine built-in register 'a2' ariarm.s:3: Warning: ignoring attempt to redefine built-in register 'a3' ariarm.s:4: Warning: ignoring attempt to redefine built-in register 'a4' ariarm.s:5: Warning: ignoring attempt to redefine built-in register 'v1' ariarm.s:6: Warning: ignoring attempt to redefine built-in register 'v2' ariarm.s:7: Warning: ignoring attempt to redefine built-in register 'v3' ariarm.s:8: Warning: ignoring attempt to redefine built-in register 'v4' ariarm.s:9: Warning: ignoring attempt to redefine built-in register 'v5' ariarm.s:10: Warning: ignoring attempt to redefine built-in register 'v6' ariarm.s:12: Warning: ignoring attempt to redefine built-in register 'sl' ariarm.s:13: Warning: ignoring attempt to redefine built-in register 'fp' ariarm.s:14: Warning: ignoring attempt to redefine built-in register 'ip' ariarm.s:15: Warning: ignoring attempt to redefine built-in register 'sp' ariarm.s:16: Warning: ignoring attempt to redefine built-in register 'lr' ariarm.s:17: Warning: ignoring attempt to redefine built-in register 'pc' ariarm.s:152: Warning: s suffix on comparison instruction is deprecated ariarm.s:1027: Warning: s suffix on comparison instruction is deprecated ariarm.s:1032: Warning: s suffix on comparison instruction is deprecated I don't speak ARM assembly. Is there anybody here who does and can give me a clue as to what to do? This is with GCC 4.7 on an armv7hl platform. Thanks, -- Jerry James http://www.jamezone.org/ ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ clisp-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/clisp-devel