diff options
author | Thiago Macieira <thiago.macieira@nokia.com> | 2009-05-08 18:45:24 (GMT) |
---|---|---|
committer | axis <qt-info@nokia.com> | 2009-11-13 10:57:50 (GMT) |
commit | 43c607383697ab506f9eb0d491ec6348f939e53d (patch) | |
tree | 9c2d1838a70adfad4e5f2ac6a30df9bd518b2fec /.gitignore | |
parent | aeac586476a6e47c7a8a6aa2121bfe39a29d8458 (diff) | |
download | Qt-43c607383697ab506f9eb0d491ec6348f939e53d.zip Qt-43c607383697ab506f9eb0d491ec6348f939e53d.tar.gz Qt-43c607383697ab506f9eb0d491ec6348f939e53d.tar.bz2 |
Add the ARMv6 inline assembly code for compiling with RVCT.
This is basically a copy & paste of the GCC inline assembly above,
switched to the RVCT inline assembly model (which is actually easier
to write and understand).
I verified that this code compiles and assembles as expected. The
output generated by RVCT is pretty much on the mark. However, I have
not executed this code yet to see if it performs as expected.
To be noted:
- when expanding the inline template code, RVCT may be tempted to
switch your entire function to ARM mode. Should we add
__attribute__((noinline)) to prevent that?
- There's no equivalent to GCC inline assembler's clobber, especially
of "memory". Also, there's no "volatile" qualifier to the
assembly. Does the compiler know it can't reorder the code? Does it
know it shouldn't trust the value of the memory after this? My test
indicates the code is fine...
Reviewed-By: Shane Kearns
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions