From patchwork Sat Mar 10 20:23:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zack Weinberg X-Patchwork-Id: 26273 Received: (qmail 36300 invoked by alias); 10 Mar 2018 20:23:08 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 36290 invoked by uid 89); 10 Mar 2018 20:23:07 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.9 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, SPF_PASS, T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=reserved, HContent-Transfer-Encoding:8bit X-HELO: mailbackend.panix.com From: Zack Weinberg To: libc-alpha@sourceware.org Subject: [PATCH] alpha/clone.S: Invoke .set noat/.set at around explicit uses of $at Date: Sat, 10 Mar 2018 15:23:03 -0500 Message-Id: <20180310202303.12439-1-zackw@panix.com> MIME-Version: 1.0 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. Tested with cross-compilation from x86-linux to alpha-linux. Committed as trivial bugfix. * sysdeps/unix/sysv/linux/alpha/clone.s (__clone): Wrap manual uses of $at in .set noat / .set at. --- sysdeps/unix/sysv/linux/alpha/clone.S | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sysdeps/unix/sysv/linux/alpha/clone.S b/sysdeps/unix/sysv/linux/alpha/clone.S index bd85b0b1d3..810a2e5e78 100644 --- a/sysdeps/unix/sysv/linux/alpha/clone.S +++ b/sysdeps/unix/sysv/linux/alpha/clone.S @@ -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. */