fix Xtensa assembler relaxtion problem

Bob Wilson bwilson@tensilica.com
Fri Mar 11 00:14:00 GMT 2005


I've committed the following patch on both the mainline and 2.16 branch.  It 
fixes a problem with a "movi" of a large, non-symbolic immediate value in the 
last slot of an Xtensa FLIX instruction.  The "movi" operation is relaxed and 
temporarily changed to refer to an internal "SPECIAL_LITERAL" symbol, which is 
supposed to be fixed up later by the xg_resolve_literals() function.  However, 
the code to call xg_resolve_literals() was skipping the last slot of multi-slot 
instructions.  The patch corrects that (and also fixes an obviously spelling 
typo in a comment).

I ran the testsuites with an xtensa-elf target to test that this patch doesn't 
break anything.  The default Xtensa processor configuration does not currently 
include any FLIX instructions, so I can't include a testcase for this problem, 
but I have verified separately that the patch does indeed correct the problem.

2005-03-10  Bob Wilson  <bob.wilson@acm.org>

         * config/tc-xtensa.c (finish_vinsn): Include the last instruction slot
         when checking if xg_resolve_literals needs to be called.
         * config/tc-xtensa.h: Fix spelling typo in a comment.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: gas.patch
Type: text/x-patch
Size: 1495 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20050311/e5f8edf6/attachment.bin>


More information about the Binutils mailing list