[fpc-pascal] inline asm in fpc progran

Jonas Maebe jonas.maebe at elis.ugent.be
Fri Aug 20 15:21:20 CEST 2010


On 20 Aug 2010, at 15:00, Nataraj S Narayan wrote:
> On Fri, Aug 20, 2010 at 2:38 PM, Jonas Maebe <jonas.maebe at elis.ugent.be 
> >wrote:
>> You probably need the "nostackframe" directive, or remove the "mov  
>> pc,lr"
>> at the end.
>>
>> Compile the code with -al, compile equivalent Pascal code with -al  
>> and look
>> at the differences in the generated ".s" files.
>
> I changed the kernel to old 2.6.30 and the code works on the Arm  
> target!
>
> That kernel  has been compiled with CONFIG_OABI_COMPAT=y. Newer  
> kernels dont
> show this option, only EABI.
>
> Also my ppcrossarm is :-
>
> Free Pascal Compiler version 2.5.1 [2010/07/28] for arm
> Copyright (c) 1993-2009 by Florian Klaempfl
>
> What do you make of it?

That you did not reply to the suggestions I made in my previous  
message. Please say what you did and what happened, even if it didn't  
work. It's not nice to spend time on trying to help someone, if that  
person then simply ignores what you write and replies with something  
completely different.

The EABI requires that the stack is always aligned to 8 bytes on entry/ 
exit of subroutines, and you probably mess up the alignment with the  
manually inserted return instruction.

Also, make sure that you compiled an EABI cross-compiler (ensure that - 
dFPC_ARMEL is part of the OPT setting of the "make" invocation used to  
compile FPC).


Jonas



More information about the fpc-pascal mailing list