From patchwork Fri Mar 6 16:20:33 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: 'Timothy Arceri' via Patchwork Forward X-Patchwork-Id: 45491 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-wg0-f71.google.com (mail-wg0-f71.google.com [74.125.82.71]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 34881214A0 for ; Fri, 6 Mar 2015 16:24:06 +0000 (UTC) Received: by wghl18 with SMTP id l18sf2577799wgh.1 for ; Fri, 06 Mar 2015 08:24:05 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:mailing-list:precedence:list-id :list-unsubscribe:list-subscribe:list-archive:list-post:list-help :sender:delivered-to:date:from:reply-to:to:message-id:subject :mime-version:content-type:content-transfer-encoding :x-original-sender:x-original-authentication-results; bh=35aNZ2bIj+1CFpABkkvZQaXABWS8j1AezqDMv5rEMAU=; b=gVB/jyiF4qR8KeBFQG/BUfaoLsGJOhZHr4Xr6ItGfx+/75PKFfGqd2smRx3Y6jXfal Xug/UCxnOarUfMyDq2NfI7COg7CU+IvNDgGFm2RXFVtldG5GFhX/Sl3Ca108hX1ZBx7e TZmOqIV/qPFJ+zIHpmrgcm7vqQopt9bSlInoopvepVznSfGJGCHaEH1XFFAjblhtmxxf QOfSsl/JCUVGo+ayRfKSQ48jsYa62l5dB3+Cw6rgrvN6LPq8EB2Q/vqmw0mjpg8LERn3 7BsTqEMOj8w6hNSSwYtd9eWlN9+G8BH5DURoDym8hGBB0Qzlwc4vpm/DrJBGhcjJTkNK xZgQ== X-Gm-Message-State: ALoCoQnD5haTt0OY39wYz4PB8U5XfhPi/wYPTI15mvRn80ODDGVwR3sYS9fd9SlbDBL44xv3hHdc X-Received: by 10.194.239.41 with SMTP id vp9mr2456128wjc.5.1425659045454; Fri, 06 Mar 2015 08:24:05 -0800 (PST) X-BeenThere: patchwork-forward@linaro.org Received: by 10.152.206.104 with SMTP id ln8ls84700lac.94.gmail; Fri, 06 Mar 2015 08:24:05 -0800 (PST) X-Received: by 10.152.120.8 with SMTP id ky8mr13153225lab.118.1425659045323; Fri, 06 Mar 2015 08:24:05 -0800 (PST) Received: from mail-lb0-x22f.google.com (mail-lb0-x22f.google.com. [2a00:1450:4010:c04::22f]) by mx.google.com with ESMTPS id cb4si7496783lad.35.2015.03.06.08.24.05 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 06 Mar 2015 08:24:05 -0800 (PST) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 2a00:1450:4010:c04::22f as permitted sender) client-ip=2a00:1450:4010:c04::22f; Received: by lbdu14 with SMTP id u14so37503592lbd.0 for ; Fri, 06 Mar 2015 08:24:05 -0800 (PST) X-Received: by 10.152.115.136 with SMTP id jo8mr14098523lab.32.1425659045171; Fri, 06 Mar 2015 08:24:05 -0800 (PST) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.112.35.133 with SMTP id h5csp1440lbj; Fri, 6 Mar 2015 08:24:04 -0800 (PST) X-Received: by 10.68.96.194 with SMTP id du2mr26551338pbb.107.1425659043446; Fri, 06 Mar 2015 08:24:03 -0800 (PST) Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id dr9si15331567pdb.232.2015.03.06.08.24.02 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 06 Mar 2015 08:24:03 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-return-86736-patch=linaro.org@sourceware.org designates 209.132.180.131 as permitted sender) client-ip=209.132.180.131; Received: (qmail 3450 invoked by alias); 6 Mar 2015 16:23:44 -0000 Mailing-List: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org Precedence: list List-Id: List-Unsubscribe: , List-Subscribe: List-Archive: List-Post: , List-Help: , Sender: binutils-owner@sourceware.org Delivered-To: mailing list binutils@sourceware.org Received: (qmail 3437 invoked by uid 89); 6 Mar 2015 16:23:43 -0000 X-Virus-Found: No X-Spam-SWARE-Status: No, score=2.4 required=5.0 tests=BAYES_50, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, FREEMAIL_REPLYTO_END_DIGIT, KAM_COUK, RCVD_IN_DNSWL_NONE autolearn=no version=3.3.2 X-HELO: nm40-vm2.bullet.mail.ne1.yahoo.com Received: from nm40-vm2.bullet.mail.ne1.yahoo.com (HELO nm40-vm2.bullet.mail.ne1.yahoo.com) (98.138.229.178) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Fri, 06 Mar 2015 16:23:42 +0000 Received: from [127.0.0.1] by nm40.bullet.mail.ne1.yahoo.com with NNFMP; 06 Mar 2015 16:23:40 -0000 Received: from [98.138.100.103] by nm40.bullet.mail.ne1.yahoo.com with NNFMP; 06 Mar 2015 16:20:46 -0000 Received: from [212.82.98.111] by tm102.bullet.mail.ne1.yahoo.com with NNFMP; 06 Mar 2015 16:20:46 -0000 Received: from [127.0.0.1] by omp1048.mail.ir2.yahoo.com with NNFMP; 06 Mar 2015 16:20:45 -0000 Received: by 217.12.9.15; Fri, 06 Mar 2015 16:20:45 +0000 Date: Fri, 6 Mar 2015 16:20:33 +0000 (UTC) From: "'Michael Perkins' via Patchwork Forward" Reply-To: Michael Perkins To: "binutils@sourceware.org" Message-ID: <520488908.7091696.1425658833229.JavaMail.yahoo@mail.yahoo.com> Subject: [PATCH][GAS][ARM] Fix for POP {regs}^ problem MIME-Version: 1.0 X-Original-Sender: patch@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 2a00:1450:4010:c04::22f as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org; dkim=pass header.i=@sourceware.org; dmarc=fail (p=NONE dis=NONE) header.from=yahoo.co.uk X-Google-Group-Id: 836684582541 X-Original-From: Michael Perkins Here is a diff for a patch to fix a problem with gas accepting the POP {reglist}^ instruction. It was encoding this in the same way as the POP {reglist} instruction. The patch rejects the POP {reglist}^ instruction in ARM mode (previously only rejected in THUMB mode). gas/ChangeLog: 2015-03-06 Michael Perkins * config/tc-arm.c (parse_operands): Set inst.operands[i].writeback for '^' on OP_REGLSTs. (do_push_pop): New writeback constraint. str++; } break; @@ -9040,6 +9040,8 @@ do_pli (void) static void do_push_pop (void) { + constraint (inst.operands[0].writeback, + _("push/pop do not support {reglist}^")); inst.operands[1] = inst.operands[0]; memset (&inst.operands[0], 0, sizeof inst.operands[0]); inst.operands[0].isreg = 1; diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 08155ac..136e52c 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -7042,7 +7042,7 @@ parse_operands (char *str, const unsigned int *pattern, bf val = parse_reg_list (&str); if (*str == '^') { - inst.operands[1].writeback = 1; + inst.operands[i].writeback = 1;