🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.utils.bug
Article #1598

gas (ns32k) doesn't recognize label(pc)

#1598
From: taylor
Date: Wed, 10 May 1989 23:05
24 lines
1056 bytes
[I mailed this on Sunday, but it doesn't seem to have made it out.  My
apologies if this is a repeat. -- David]

When compiled for the ns32k, gas doesn't recognize an operand of
`some_label(pc)' as meaning that it should access the label via
pc-relative memory space addressing.  Instead it ignores the `(pc)' and
assembles the operand using absolute addressing.

The fix is easy.  In ns32k.c, in the function `addr_mode', add the lines:

        if (!strncmp(&str[strl-4],"(pc",3)) {
	  mode=27;
	}

right after the lines that read:

        if (!strncmp(&str[strl-4],"(sb",3)) {
	  mode=26;
	}

David
--
David Taylor
taylor@think.com, ...!think!taylor
Technical Details
Message-ID: <8905102305.AA22986@odin.think.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ukma!tut.cis.ohio-state.edu!THINK.COM!taylor

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ukma!tut.cis.ohio-state.edu!THINK.COM!taylor
From: taylor@THINK.COM
Newsgroups: gnu.utils.bug
Subject: gas (ns32k) doesn't recognize label(pc)
Message-ID: <8905102305.AA22986@odin.think.com>
Date: 10 May 89 23:05:24 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 24