CW 6.3 CF assembler: mac parallel load not available?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

CW 6.3 CF assembler: mac parallel load not available?

2,253 次查看
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?


标签 (1)
标记 (1)
0 项奖励
回复
2 回复数

1,244 次查看
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 项奖励
回复

1,244 次查看
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 项奖励
回复