Assembly A00049 error Topic is solved

If you have a simple question and just want an answer.
jmarple
Junior Member
Posts: 5
Joined: Tue Jun 14, 2016 5:09 am
Location: MA, USA
Contact:

Assembly A00049 error

Postby jmarple » Fri Feb 17, 2017 4:25 pm

Hello all,

I am currently writing a function in assembly and for certain commands in dual issue mode, I get the following error:

Error: A00049 no format matching for instruction: 'st8'


Code that can produce this error is:

Code: Select all

{st8 r0, r7[r1]; add r7, r7, 1}

and

Code: Select all

{ashr r0, r0, r1; nop;}


however this compiles fine:

Code: Select all

st8 r0, r7[r1]
add r7, r7, 1

and

Code: Select all

ashr r0, r0, r1
nop


Is there a reason why certain commands can't be run in dual issue? Oddly enough, if you switch st8 for ld8u, it compiles. If you switch ashr to shr, it compiles too.

I'm compiling within xTIMEcomposer 14.1.2 on windows 10 64bit.

Thanks for your help.
View Solution
User avatar
infiniteimprobability
XCore Expert
Posts: 787
Joined: Thu May 27, 2010 10:08 am
Contact:

Postby infiniteimprobability » Fri Feb 17, 2017 5:20 pm

Is there a reason why certain commands can't be run in dual issue? Oddly enough, if you switch st8 for ld8u, it compiles. If you switch ashr to shr, it compiles too.

Yes - if you look at https://www.xmos.com/download/private/x ... 1.1%29.pdf, P213, you can see the encoding of ST8 includes 3 operands in a 32b word.. So I'm afraid that can't be dual issued. AS you have noticed, there are more load instructions that are 16b so they can be dual issued..

I expect it was tradeoff made when looking at the instruction coding..
jmarple
Junior Member
Posts: 5
Joined: Tue Jun 14, 2016 5:09 am
Location: MA, USA
Contact:

Postby jmarple » Fri Feb 17, 2017 5:40 pm

Ahh, of course. Thanks for the explanation!

Return to “Q&A”

Who is online

Users browsing this forum: No registered users and 4 guests