[Speex-dev] Blackfin inline assembler and VisualDSP++ toolchain

Robin Getz rgetz at blackfin.uclinux.org
Tue Jun 19 12:35:20 PDT 2007

On Tue 19 Jun 2007 13:00, Michael Shatz pondered:
> Robin Getz wrote:
> >I never met any hardware that gcc could not run code on. toolchains have 
> >nothing do with embedded OSes.
> That's true. Add some postprocessing, program binary into flash and 
> code would run.  But you likely would not be able to use non-gnu tools
> like all VisualDSP++ jtag-based stuff that makes the life of developer
> easier. 

Yes - you would use the JTAG-based GNU Tools that makes life of a developer 


> >Actually - I don't think this is true at all. There have been more people
> >who have downloaded the full blown, free version of gcc, than the crippled,
> >time limited version of VDSP.
> I guess, I didn't count hobbyists. May be, I should.

It is not just hobbyists - According to some ADI folks I have talked to - 
shipments of Blackfin that run gcc compiled objects are nearly the same as 
with VDSP.

> > I know people who are using speex without using 
> > any OS - using gcc. I don't know if they were using external ram or not...
> >
> Would like to talk to them.

They monitor the speex mailing list - if they want to introduce 
themselves - they will.

> Actually, I used gcc with Eclipse, not with Blackfin, with Altera Nios2.
> Hated every  second. Not because of gcc, which was fine, but because of
> Eclipse and Altera-provided support plug-ins.

I personally think it slows things down too much - and prefer just 
command line, UART, Ethernet and blinky lights - but that is just me.

> On the other hand, co-worker used the same combo for smaller project and
> feeled o.k. about it. I guess, Eclipse just not my cup of tea. At least, not
> for C/C++ development, heard it's o.k. for Java.

I know some who are using it for large C/C++ projects - and it seems to work
well for them. There are also other GUIs - including Insight that work just as 
well in Windows as Linux.


> Still, in specific case of Blackfin, VisualDSP++ is, IMHO, better 
> tool for small projects with tight developer's time budget and
>tight DSP resources budget. 

It is a matter of personal opinion, determined by the background
of the developer. I would rather use gcc - you would rather not.
That is OK.

> Thank you very much. I didn't see the second and the third pages - 
> didn't realize that part of the syntax is architecture-neutral. 

Most things in gcc are independent of architecture. If possible -
only do things once....

> Normally, I strongly prefer separate assemble files over inline 
> asm (except for trivial stuff) so had no opportunity to become an expert.

I think that is what our compiler (gcc) folks thought would be best - but that
is an architecture decision from Jean-Marc. That is how the other architecture 
optimisations are done as well.

> That's assuming that I am going to fix the syntax myself. 
> Still didn't lost the hope that Jean-Marc would 
> do that instead of me.

Maybe you should ask the people at ADI to do it - since they are distributing 
the old/outdated version anyway and should update it (as to avoid this in the 


Last time I asked, they said it was not possible, and mumbled something about
gcc accepting illegal operands. (which we are not - gcc just allows more
general purpose register allocation than VDSP does, so the inline puts more
register pressure on the VDSP than on gcc).


More information about the Speex-dev mailing list