From owner-freebsd-mips@FreeBSD.ORG Fri Oct 21 07:09:24 2011 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AC5F61065670 for ; Fri, 21 Oct 2011 07:09:24 +0000 (UTC) (envelope-from mipsjunkie@gmail.com) Received: from mail-yw0-f54.google.com (mail-yw0-f54.google.com [209.85.213.54]) by mx1.freebsd.org (Postfix) with ESMTP id 706108FC12 for ; Fri, 21 Oct 2011 07:09:24 +0000 (UTC) Received: by ywm3 with SMTP id 3so4610521ywm.13 for ; Fri, 21 Oct 2011 00:09:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=FQt17EHCiIrSi/2077O7uBBO2lkvAPaiiT/Qy5TW7p8=; b=oDiioYFJybdVbRgiPZ6LDS4ZSCtyjAaKh/IOmAOIF6bGWSZNM/6WNAO+KvwSEuFr8w wAQDrwB5BFp+1fKkUGNV6cN2VqiSS9c5foMFoKd229Ko+UH52T8qFV19r+szYFkj/jBI ZbEij2AsSY+1l2KSZ9SDgtaDinI4G7ImtqWdg= MIME-Version: 1.0 Received: by 10.68.38.41 with SMTP id d9mr6079704pbk.103.1319179098248; Thu, 20 Oct 2011 23:38:18 -0700 (PDT) Received: by 10.142.200.13 with HTTP; Thu, 20 Oct 2011 23:38:18 -0700 (PDT) Date: Fri, 21 Oct 2011 12:08:18 +0530 Message-ID: From: Rohit J To: freebsd-mips Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Subject: Assembler complains about use of $at after ".set noat" on sd instr X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2011 07:09:24 -0000 Hi FreeBSD MIPS Gurus, Am just starting on MIPS assembly in FreeBSD. The code that I have was building just fine. Then I added an line to a .S file @line# 513 sd k0, mpl(sp) which on make gives an error that says : Assembler messages: octeon_asm.S:440: Error: illegal operands `ld T3,8($7)' octeon_asm.S:513: Error: Macro used $at after ".set noat" The .S file has a noat directive .set noat Silly Questions 1. Why does sd instruction (store double word) end up using at ? I checked the particular manual (Cavium Octeon H/w reference Manual) and didn=92t find anything about sd instr using register at. 2. Why does it complain about ld instr so far up in the file away from the place new code was inserted? Any pointers appreciated Rohit