LLVM Bugzilla is read-only and represents the historical archive of all LLVM issues filled before November 26, 2021. Use github to submit LLVM bugs

Bug 26321 - MIPS IAS does not handle pseudoinstruction dla w/o $at
Summary: MIPS IAS does not handle pseudoinstruction dla w/o $at
Status: RESOLVED FIXED
Alias: None
Product: new-bugs
Classification: Unclassified
Component: new bugs (show other bugs)
Version: trunk
Hardware: Other FreeBSD
: P normal
Assignee: Unassigned LLVM Bugs
URL:
Keywords:
Depends on:
Blocks: 23370
  Show dependency tree
 
Reported: 2016-01-26 12:50 PST by emaste
Modified: 2017-02-08 07:25 PST (History)
3 users (show)

See Also:
Fixed By Commit(s):


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description emaste 2016-01-26 12:50:13 PST
Another result from Sean Bruno's ongoing attempts to build FreeBSD/MIPS with Clang & integrated assembler:

 /home/sbruno/head/sys/mips/mips/exception.S:196:2: error: pseudo-instruction requires $at, which is not available
 dla $26, machExceptionTable # get base of the jump table

GNU as assembles the dla pseudoinstruction as:

 ;        PTR_LA  k0, _C_LABEL(machExceptionTable)  # get base of the jump table
      c0:       3c1a0000        lui     k0,0x0
      c4:       675a0000        daddiu  k0,k0,0
      c8:       001ad438        dsll    k0,k0,0x10
      cc:       675a0000        daddiu  k0,k0,0
      d0:       001ad438        dsll    k0,k0,0x10
      d4:       675a0000        daddiu  k0,k0,0
Comment 1 Simon Dardis 2016-09-21 05:55:38 PDT
Is this bug still live? Currently

  .set noat
  dla $26, 0x1234567890abcdef

gets assembled to:

	.text
	.set	noat
	lui	$26, 4660
	ori	$26, $26, 22136
	dsll	$26, $26, 16
	ori	$26, $26, 37035
	dsll	$26, $26, 16
	ori	$26, $26, 52719
Comment 2 Brad Smith 2017-01-22 02:12:34 PST
As Simon asked, is this bug still live?
Comment 3 Simon Dardis 2017-02-08 07:25:56 PST
r294182 should solve this.