http://msdn.microsoft.com/en-us/library/ms925478.aspx
So I'm using a ARM11 processor with instruction set of ARM9 (ARMv4 - ARMv5).
In this manner, there isn't and optiomization on compiled code.
Some comments ?
Thanks,
Paolo
Yes, you are correct. The compiler will generate only ARMV4/5 code and
all of the binary libraries supplied by Microsoft are compiled to use
ARMV4I instructions; none of the ARMV6 or NEON instructions are used,
and in CE 5.0 all floating point operations through the CRT are
emulated and the compiler never generates floating point instructions,
even if you have a processor with hardware VFP, like the i.MX31.
This does not mean that there is no optimisation, there is, but it
doesn't make use of the advanced instructions available in the newer
ARM cores.
If you use CE 6.0, it is possible to use the hardware VFP (see other
posts in this thread).
I believe that Microsoft are aware that the compiler for ARM is a
little out of date but don't plan to fix it for CE 6.0. They may
upgrade it with the next major release of CE.
Regards,
Andrew.
Thanks,
Paolo
"AndrewScholan[MCTS]" wrote:
> .
>
--
Dean Ramsier - eMVP
BSQUARE Corporation
"paolo patierno" <paolop...@discussions.microsoft.com> wrote in message
news:8295BB26-DAA6-4C48...@microsoft.com...
Thanks,
Paolo
"Dean Ramsier" wrote:
> .
>
It's not really the end of the world... you're using CE5.0 which is
several years old now; you should consider moving to CE6.0 then you'll
get the benefit of being able to use the hardware vector floating
point unit in the i.MX31 which is a big optimisation leap anyway. The
fact that your compiler can't use some of the more sophisticated ARM
instructions is frustrating, I admit. We would all like to get the
best optimisation for our code but there is a backwards compatibility
that has to be maintained in the libraries, etc.
I do know that MS development team are aware of this issue. You could
log on to the next Windows CE online chat session that MS organise and
ask the development team directly....
Andrew.