CW 6.3 CF assembler: mac parallel load not available?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CW 6.3 CF assembler: mac parallel load not available?

2,249 Views
nspon
Contributor II
I'm successfully using the

mac.w D0.L,D1.L,ACC0

instruction, but the parallel-load extension of this

mac.w D0.L,D1.L,ACC0,(A0)+,D2

doesn't work -- the ColdFire 6.3 assembler is claiming "too many arguments". Its legitimate as far as I can tell from the CF Programmers Reference Manual, I'm not even using the & option. Is this not supported yet?


Labels (1)
0 Kudos
Reply
2 Replies

1,240 Views
J2MEJediMaster
Specialist I
OK, I don't know which particular ColfFire processor you're using, so this is speculative.

First, go to the CodeWarrior Target Settings panel (Edit | Your TargetNameHere Settings...), and select the ColdFire Assembler panel. Make sure that the Processor item is using the correct MCU deriviative for code generation.

Second, since this is a MAC- or EMAC-type  instruction, I'd make sure those items on this panel are checked. See the CodeWarrior Development Studio for ColdFire Architectures v6.3 targeting Manual, page 39, for details.

Finally, you may want to read the Assembly release notes (they're usually found the CodeWarrior directory) and see if this type of instruction is supported, or uses a different assembly mnemonic so as to differentiate the extension instruction from the regular one.

---Tom


Message Edited by J2MEJediMaster on 2007-05-01 11:17 AM

0 Kudos
Reply

1,240 Views
nspon
Contributor II
I'm using an MCF 5208. I have found the solution: I was misreading the Reference Manual. The form that works is:

mac.w D0.L,D1.L,(A0)+,D2,ACC0

The ACCx register goes at the end, not in the middle.

My apologies for the confusion.

-- Nigel
0 Kudos
Reply