TIP: Click on subject to list as thread! ANSI
echo: rberrypi
to: TAUNO VOIPIO
from: THE NATURAL PHILOSOPHER
date: 2018-03-09 17:40:00
subject: Re: Compile Assembly and

On 09/03/18 13:56, Tauno Voipio wrote:
> On 9.3.18 11:30, The Natural Philosopher wrote:
>> On 09/03/18 09:17, Richard Kettlewell wrote:
>>> The Natural Philosopher  writes:
>>>> On 08/03/18 17:33, mm0fmf wrote:
>>>>> On 08/03/2018 15:27, Martin Gregorie wrote:
>>>>>> On Thu, 08 Mar 2018 13:34:57 +0000, The Natural Philosopher wrote:
>>>>>>> I would at least put in a bit more
>>>>>>>
>>>>>>> int myfunction(int bufflth, char* buff)
>>>>>>>       {
>>>>>>>          return (int)buff[bufflth-1];
>>>>>>>       }
>>>>>>>
>>>>>>> So you know where on the stack buff and bufflth are...
>>>>>>
>>>>>> Why would you want to know that? All the assembler operations
>>>>>> using the
>>>>>> arguments will be inside myfunction() and, unless the code is
>>>>>> calculating
>>>>>> a result to be returned and used elsewhere, the returned value is
>>>>>> probably to report success or failure.
>>>>>>
>>>>>
>>>>> If it returns success or failure, why return 1 of 4 billion possible
>>>>> values?
>>>>
>>>> Another personm who has never coded assmebler for C..
>>>>
>>>> It not what you are rurining, its how to access (bufflth, char* buff)
>>>> which are LOCAL stack based variables.
>>>
>>> The first few args are passed in registers on many modern systems. See
>>> e.g.
>>>
http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042f/IHI0042F_aapcs.pdf
>>>
>>> for instance.
>>>
>>
>> Even so, the method still reveals WHICH registers
>>
>> But it is not a feature of the ARM per se, merely a convention.
>>
>> I assume gcc follows it, but there is no gurantee
>
> GCC follows the ARM EABI specification:
>
>   - stack on 8 byte boundaries,
>   - arguments in r0 - r3
>   - return value in r0
>
> I still suspect that the OP does not have a clue of the assembly
> code he's attempting to link in.
>
That is very useful info, which I will remember in case I ever program
an ARM chip in assembler...


Your final sentence?

Its quite likley. A lot of people are coming into Pis not from Linux,
but from Sinclair Spectra!

Or similar.

Which is great, but there are some knowledge gaps...



--
Ideas are more powerful than guns. We would not let our enemies have
guns, why should we let them have ideas?

Josef Stalin

--- SoupGate-Win32 v1.05
* Origin: Agency HUB, Dunedin - New Zealand | FidoUsenet Gateway (3:770/3)

SOURCE: echomail via QWK@docsplace.org

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.