| Deutsch English Français Italiano |
|
<20250114234819.000012ac@yahoo.com> View for Bookmarking (what is this?) Look up another Usenet article |
Path: news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Michael S <already5chosen@yahoo.com> Newsgroups: comp.arch Subject: Re: Calling conventions (particularly 32-bit ARM) Date: Tue, 14 Jan 2025 23:48:19 +0200 Organization: A noiseless patient Spider Lines: 27 Message-ID: <20250114234819.000012ac@yahoo.com> References: <vlgngv$1ks4a$1@dont-email.me> <4903307dfcce354508c9fc016a4c1ea1@www.novabbs.org> <vli2gu$1aftg$1@paganini.bofh.team> <vm17ka$1d58r$1@dont-email.me> <vm1pp4$31m2n$1@paganini.bofh.team> <vm67ic$2fnmd$1@dont-email.me> <vm69pj$2h7bt$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Injection-Date: Tue, 14 Jan 2025 22:48:22 +0100 (CET) Injection-Info: dont-email.me; posting-host="497c8981ce8ea90e4c6987a77c346ff1"; logging-data="2707282"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX195nKfQbgNP8jgJkLxMRuSTgph9NtFAQCc=" Cancel-Lock: sha1:Y9c+1jGryZGyvg0tI2x8SiP/UFM= X-Newsreader: Claws Mail 4.1.1 (GTK 3.24.34; x86_64-w64-mingw32) On Tue, 14 Jan 2025 19:18:27 +0100 Terje Mathisen <terje.mathisen@tmsw.no> wrote: > Stephen Fuld wrote: > > On 1/12/2025 5:20 PM, Waldek Hebisch wrote: =20 > >> You are implicitely assuming that passing large number of > >> arguments is expensive. =20 > >=20 > > I guess.=A0 I am actually assuming that passing arguments in memory > > is more expensive than passing them in registers.=A0 I don't think > > that is controversial. =20 >=20 > Usually true, except for recursive functions where you have to store=20 > most stuff on the stack anyway, so going directly there can sometimes=20 > generate more compact code. >=20 > Terje >=20 I would think that for Fortran (=3D=3Deverything passed by reference) memory would beat registers most of the time. May be, except for functions with 0-4 parameters. Do common Fortarn compilers even bother with passing in register? It would require replacement of natural by-reference "pointer in register points to value in memory" calling sequence to something like copy-in/copy-out, right?