mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Rich Felker <dalias@libc.org>
To: musl@lists.openwall.com
Subject: Re: [PATCH 2/2] add powerpc64 port
Date: Mon, 28 Mar 2016 18:10:52 -0400	[thread overview]
Message-ID: <20160328221052.GJ21636@brightrain.aerifal.cx> (raw)
In-Reply-To: <56F9A973.2040809@gmail.com>

On Tue, Mar 29, 2016 at 09:00:19AM +1100, Patrick Oppenlander wrote:
> On 28/03/16 10:37, Rich Felker wrote:
> >This is kind of the reason why I was hesitant to add .S support for so
> >long. :-)
> >
> >I don't want to reject it outright, but the idea of adding .S support
> >was just to allow conditional compilation, not to do condensed
> >assembly sources that require macro expansion. I can see where the
> >code might be unwieldy without this though. Anyone else have opinions?
> 
> IMHO .S support is worthwhile just to be able to use constant
> definitions in assembly.
> 
> For example,
> 
> __unmapself:
>     mov r7,#SYS_munmap
>     svc 0
>     mov r7,#SYS_exit
>     svc 0
> 
> Is a clearer than:
> 
> __unmapself:
>     mov r7,#91
>     svc 0
>     mov r7,#1
>     svc 0
> 
> Especially when approaching the source for the first time.

Are there any asm source files making syscalls where it's not obvious
from the public contract for the function(s) being implemented which
syscall they're making? I think it's just as easy to add a comment
with the syscall name if it's unclear, and then the actual number is
present too which is nice because it matches the dissembly.

The time when it would actually improve things to have symbolic
constants in asm files is for places where the constant can actually
vary, e.g. due to being derived from an offset in an implementation
internal structure or such (like struct __pthread). But preprocessor
macros cannot represent that in asm source files anyway. :(

Rich


  reply	other threads:[~2016-03-28 22:10 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-27 21:20 [RFC] " Bobby Bingham
2016-03-27 21:20 ` [PATCH 1/2] add 64bit atomics on top of 64bit ll/sc primitives Bobby Bingham
2016-03-27 22:27   ` Rich Felker
2016-03-27 21:20 ` [PATCH 2/2] add powerpc64 port Bobby Bingham
2016-03-27 23:37   ` Rich Felker
2016-03-28  0:32     ` Bobby Bingham
2016-03-28  2:18       ` Rich Felker
2016-03-28  3:27         ` Szabolcs Nagy
2016-04-02 17:02         ` Bobby Bingham
2016-04-03  2:09           ` Rich Felker
2016-04-03 17:10             ` Bobby Bingham
2016-04-03 17:26               ` Rich Felker
2016-04-03 17:50                 ` Bobby Bingham
2016-04-04  4:03         ` Bobby Bingham
2016-04-04 10:41           ` Szabolcs Nagy
2016-03-28 22:00     ` Patrick Oppenlander
2016-03-28 22:10       ` Rich Felker [this message]
2016-03-28 23:04         ` Patrick Oppenlander

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160328221052.GJ21636@brightrain.aerifal.cx \
    --to=dalias@libc.org \
    --cc=musl@lists.openwall.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).