about summary refs log tree commit diff
path: root/crt/aarch64/crtn.s
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2020-03-11 18:58:38 -0400
committerRich Felker <dalias@aerifal.cx>2020-03-14 21:23:37 -0400
commitdb86ec100dc9973946ebfc9cf0d91686e334731a (patch)
treee183487decd18f3fd2cac3fce891230a791885ec /crt/aarch64/crtn.s
parent972b5fde9a2d1b5517c15803fb437195e6663085 (diff)
downloadmusl-db86ec100dc9973946ebfc9cf0d91686e334731a.tar.gz
musl-db86ec100dc9973946ebfc9cf0d91686e334731a.tar.xz
musl-db86ec100dc9973946ebfc9cf0d91686e334731a.zip
remove useless mips syscall asm constraint, align style with mips64/n32
commit 4221f154ff29ab0d6be1e7beaa5ea2d1731bc58e added the r7
constraint apparently out of a misunderstanding of the breakage it was
addressing, and did so because the asm was in a shared macro used by
all the __syscallN inline functions. now "+r" is used in the output
section for the forms 4-argument and up, so having it in input is
redundant, and the forms with 0-3 arguments don't need it as an input
at all.

the r2 constraint is kept because without it most gcc versions (seems
to be all prior to 9.x) fail to honor the output register binding for
r2. this seems to be a variant of gcc bug #87733.

both the r7 and r2 input constraints look useless, but the r2 one was
a quiet workaround for gcc bug 87733, which affects all modern
versions prior to 9.x, so it's kept and documented.
Diffstat (limited to 'crt/aarch64/crtn.s')
0 files changed, 0 insertions, 0 deletions