alpha/clone.S: Invoke .set noat/.set at around explicit uses of $at

On Alpha, the register $at is, by default, reserved for use by the
assembler, in the expansion of pseudo-instructions.  It's also used
by the special calling convention for _mcount.  We get warnings from
Alpha clone.S because the code to call _mcount isn't properly marked
up to tell the assembler not to use $at itself.

	* sysdeps/unix/sysv/linux/alpha/clone.s (__clone): Wrap manual
	uses of $at in .set noat / .set at.
This commit is contained in:
Zack Weinberg 2018-03-09 09:42:04 -05:00
parent 6253bacdc0
commit 054b72cc97
2 changed files with 7 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2018-03-10 Zack Weinberg <zackw@panix.com>
* sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Wrap manual
uses of $at in .set noat / .set at.
2018-03-10 H.J. Lu <hongjiu.lu@intel.com>
* include/setjmp.h (__libc_longjmp): Remove libc_hidden_proto.

View File

@ -40,9 +40,11 @@
cfi_startproc
__clone:
#ifdef PROF
.set noat
ldgp gp,0(pv)
lda AT, _mcount
jsr AT, (AT), _mcount
.set at
#endif
/* Sanity check arguments. */